AF Utility Nodes installation in Executor Image Manager fails due to missing dependency

@AnotherFraudUser

Today, I tried running my Executor Image Manager workflow on Business Hub version 1.17.3, running the workflow on Executor Image version 5.5.2.

I was trying to build an Executor Context image version 5.8 (latest). I selected AF Utility Nodes Extension and added custom Conda environment (in a .yml file) → See conda env and dockerfile on the bottom.

I configured the following update site, as per the AF Utility nodes page:

https://update.knime.com/community-contributions/trusted/5.8

The executor image build failed because the KNIME extension AF Utility Nodes (feature org.anotherfraud.excel.feature.feature.group) has an unsatisfied dependency. Specifically, the bundled plugin org.AnotherFraudExcel.PasswordManager requires the OSGi bundle org.apache.httpcomponents.fluent-hc version 4.5.10–<6.0.0, but this bundle is not present in the base executor image (5.8.2) or in the configured update sites (https://update.knime.com/community-contributions/trusted/5.8).

Due to this missing dependency, p2 cannot resolve the installation and the entire executor image build exits with error status 13.

Status: Failed
Start Time: 2026-03-12T14:38:26Z

Download Logs

Build Logs

Logs

os.arch = amd64 os.name = Linux os.version = 5.14.0-362.24.1.el9_3.x86_64 osgi.classloader.lock = classname p2.trustedAuthorities = https://update.knime.com path.separator = : sun.arch.data.model = 64 sun.boot.library.path = /home/knime/knime/plugins/org.knime.binary.jre.linux.x86_64_17.0.5.20221116/jre/lib sun.cpu.endian = little sun.io.unicode.encoding = UnicodeLittle sun.java.command = /home/knime/knime//plugins/org.eclipse.equinox.launcher_1.6.700.v20240213-1244.jar -os linux -ws gtk -arch x86_64 -launcher /home/knime/knime/knime -name Knime --launcher.library /home/knime/knime//plugins/com.equo.chromium.cef.gtk.linux.x86_64_128.0.28/eclipse_11902.so -startup /home/knime/knime//plugins/org.eclipse.equinox.launcher_1.6.700.v20240213-1244.jar --launcher.overrideVmargs -exitdata 1 -application org.eclipse.equinox.p2.director -consolelog -r https://update.knime.com/community-contributions/trusted/5.8 -i org.anotherfraud.excel.feature.feature.group, -vm /home/knime/knime//plugins/org.knime.binary.jre.linux.x86_64_17.0.5.20221116/jre/bin/java -vmargs -Djava.security.properties=plugins/org.knime.binary.jre.linux.x86_64_17.0.5.20221116/security.properties -Dorg.apache.cxf.bus.factory=org.knime.cxf.core.fragment.KNIMECXFBusFactory -Dorg.apache.cxf.transport.http.forceURLConnection=true -server -Dsun.java2d.d3d=false -Dosgi.classloader.lock=classname -XX:+UnlockDiagnosticVMOptions -Dsun.net.client.defaultReadTimeout=0 -Dknime.xml.disable_external_entities=true -Dcomm.disable_dynamic_service=true -Dp2.trustedAuthorities=https://update.knime.com -Declipse.e4.inject.javax.warning=false -Dorg.eclipse.ecf.provider.filetransfer.excludeContributors=org.eclipse.ecf.provider.filetransfer.httpclientjava --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.base/java.nio.channels=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/sun.nio=ALL-UNNAMED --add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED --add-opens=java.base/sun.net.www.protocol.http=ALL-UNNAMED --add-opens=java.base/sun.net.www.protocol.https=ALL-UNNAMED --add-opens=java.base/java.util.regex=ALL-UNNAMED -Dorg.eclipse.swt.internal.gtk.disablePrinting -Djdk.httpclient.allowRestrictedHeaders=content-length --add-opens=java.base/sun.util.calendar=ALL-UNNAMED -Darrow.enable_unsafe_memory_access=true -Darrow.memory.debug.allocator=false -Darrow.enable_null_check_for_get=false --add-opens=java.base/sun.security.ssl=ALL-UNNAMED --add-opens=java.base/sun.security.util=ALL-UNNAMED --add-opens=java.xml/com.sun.org.apache.xerces.internal.parsers=ALL-UNNAMED --add-opens=java.xml/com.sun.org.apache.xerces.internal.util=ALL-UNNAMED --add-opens=java.xml/com.sun.org.apache.xerces.internal.parsers=ALL-UNNAMED --add-opens=java.xml/com.sun.org.apache.xerces.internal.util=ALL-UNNAMED --add-opens=java.security.jgss/sun.security.jgss.krb5=ALL-UNNAMED --add-exports=java.security.jgss/sun.security.jgss=ALL-UNNAMED --add-exports=java.security.jgss/sun.security.jgss.spi=ALL-UNNAMED --add-exports=java.security.jgss/sun.security.krb5.internal=ALL-UNNAMED --add-exports=java.security.jgss/sun.security.krb5=ALL-UNNAMED -Dnet.snowflake.jdbc.enableBouncyCastle=true -XshowSettings -XX:MaxRAMPercentage=60 -Dlog4j.configuration=/home/knime/knime/log4j.xml -Duser.home=/home/knime -Dchromium.args=--disable-gpu;--disable-gpu-compositing;--disable-dev-shm-usage -Dcom.knime.gateway.executor.websocket.port=7000 -Dorg.knime.ui.mode=JOB-VIEWER -Dchromium.force_windowless_headless=true -jar /home/knime/knime//plugins/org.eclipse.equinox.launcher_1.6.700.v20240213-1244.jar sun.java.launcher = SUN_STANDARD sun.java2d.d3d = false sun.jnu.encoding = UTF-8 sun.management.compiler = HotSpot 64-Bit Tiered Compilers sun.net.client.defaultReadTimeout = 0 user.dir = /home/knime user.home = /home/knime user.language = en user.name = knime Locale settings: default locale = English default display locale = English default format locale = English available locales = , af, af_NA, af_ZA, af_ZA_#Latn, agq, agq_CM, agq_CM_#Latn, ak, ak_GH, ak_GH_#Latn, am, am_ET, am_ET_#Ethi, ar, ar_001, ar_AE, ar_BH, ar_DJ, ar_DZ, ar_EG, ar_EG_#Arab, ar_EH, ar_ER, ar_IL, ar_IQ, ar_JO, ar_KM, ar_KW, ar_LB, ar_LY, ar_MA, ar_MR, ar_OM, ar_PS, ar_QA, ar_SA, ar_SD, ar_SO, ar_SS, ar_SY, ar_TD, ar_TN, ar_YE, as, as_IN, as_IN_#Beng, asa, asa_TZ, asa_TZ_#Latn, ast, ast_ES, ast_ES_#Latn, az, az_AZ, az_AZ_#Cyrl, az_AZ_#Latn, az__#Cyrl, az__#Latn, bas, bas_CM, bas_CM_#Latn, be, be_BY, be_BY_#Cyrl, bem, bem_ZM, bem_ZM_#Latn, bez, bez_TZ, bez_TZ_#Latn, bg, bg_BG, bg_BG_#Cyrl, bm, bm_ML, bm_ML_#Latn, bn, bn_BD, bn_BD_#Beng, bn_IN, bo, bo_CN, bo_CN_#Tibt, bo_IN, br, br_FR, br_FR_#Latn, brx, brx_IN, brx_IN_#Deva, bs, bs_BA, bs_BA_#Cyrl, bs_BA_#Latn, bs__#Cyrl, bs__#Latn, ca, ca_AD, ca_ES, ca_ES_#Latn, ca_ES_VALENCIA, ca_FR, ca_IT, ccp, ccp_BD, ccp_BD_#Cakm, ccp_IN, ce, ce_RU, ce_RU_#Cyrl, ceb, ceb_PH, ceb_PH_#Latn, cgg, cgg_UG, cgg_UG_#Latn, chr, chr_US, chr_US_#Cher, ckb, ckb_IQ, ckb_IQ_#Arab, ckb_IR, cs, cs_CZ, cs_CZ_#Latn, cy, cy_GB, cy_GB_#Latn, da, da_DK, da_DK_#Latn, da_GL, dav, dav_KE, dav_KE_#Latn, de, de_AT, de_BE, de_CH, de_DE, de_DE_#Latn, de_IT, de_LI, de_LU, dje, dje_NE, dje_NE_#Latn, doi, doi_IN, doi_IN_#Deva, dsb, dsb_DE, dsb_DE_#Latn, dua, dua_CM, dua_CM_#Latn, dyo, dyo_SN, dyo_SN_#Latn, dz, dz_BT, dz_BT_#Tibt, ebu, ebu_KE, ebu_KE_#Latn, ee, ee_GH, ee_GH_#Latn, ee_TG, el, el_CY, el_GR, el_GR_#Grek, en, en_001, en_150, en_AE, en_AG, en_AI, en_AS, en_AT, en_AU, en_BB, en_BE, en_BI, en_BM, en_BS, en_BW, en_BZ, en_CA, en_CC, en_CH, en_CK, en_CM, en_CX, en_CY, en_DE, en_DG, en_DK, en_DM, en_ER, en_FI, en_FJ, en_FK, en_FM, en_GB, en_GD, en_GG, en_GH, en_GI, en_GM, en_GU, en_GY, en_HK, en_IE, en_IL, en_IM, en_IN, en_IO, en_JE, en_JM, en_KE, en_KI, en_KN, en_KY, en_LC, en_LR, en_LS, en_MG, en_MH, en_MO, en_MP, en_MS, en_MT, en_MU, en_MW, en_MY, en_NA, en_NF, en_NG, en_NL, en_NR, en_NU, en_NZ, en_PG, en_PH, en_PK, en_PN, en_PR, en_PW, en_RW, en_SB, en_SC, en_SD, en_SE, en_SG, en_SH, en_SI, en_SL, en_SS, en_SX, en_SZ, en_TC, en_TK, en_TO, en_TT, en_TV, en_TZ, en_UG, en_UM, en_US, en_US_#Latn, en_US_POSIX, en_VC, en_VG, en_VI, en_VU, en_WS, en_ZA, en_ZM, en_ZW, eo, eo_001, eo_001_#Latn, es, es_419, es_AR, es_BO, es_BR, es_BZ, es_CL, es_CO, es_CR, es_CU, es_DO, es_EA, es_EC, es_ES, es_ES_#Latn, es_GQ, es_GT, es_HN, es_IC, es_MX, es_NI, es_PA, es_PE, es_PH, es_PR, es_PY, es_SV, es_US, es_UY, es_VE, et, et_EE, et_EE_#Latn, eu, eu_ES, eu_ES_#Latn, ewo, ewo_CM, ewo_CM_#Latn, fa, fa_AF, fa_IR, fa_IR_#Arab, ff, ff_BF_#Adlm, ff_BF_#Latn, ff_CM_#Adlm, ff_CM_#Latn, ff_GH_#Adlm, ff_GH_#Latn, ff_GM_#Adlm, ff_GM_#Latn, ff_GN, ff_GN_#Adlm, ff_GN_#Latn, ff_GW_#Adlm, ff_GW_#Latn, ff_LR_#Adlm, ff_LR_#Latn, ff_MR_#Adlm, ff_MR_#Latn, ff_NE_#Adlm, ff_NE_#Latn, ff_NG_#Adlm, ff_NG_#Latn, ff_SL_#Adlm, ff_SL_#Latn, ff_SN, ff_SN_#Adlm, ff_SN_#Latn, ff__#Adlm, ff__#Latn, fi, fi_FI, fi_FI_#Latn, fil, fil_PH, fil_PH_#Latn, fo, fo_DK, fo_FO, fo_FO_#Latn, fr, fr_BE, fr_BF, fr_BI, fr_BJ, fr_BL, fr_CA, fr_CD, fr_CF, fr_CG, fr_CH, fr_CI, fr_CM, fr_DJ, fr_DZ, fr_FR, fr_FR_#Latn, fr_GA, fr_GF, fr_GN, fr_GP, fr_GQ, fr_HT, fr_KM, fr_LU, fr_MA, fr_MC, fr_MF, fr_MG, fr_ML, fr_MQ, fr_MR, fr_MU, fr_NC, fr_NE, fr_PF, fr_PM, fr_RE, fr_RW, fr_SC, fr_SN, fr_SY, fr_TD, fr_TG, fr_TN, fr_VU, fr_WF, fr_YT, fur, fur_IT, fur_IT_#Latn, fy, fy_NL, fy_NL_#Latn, ga, ga_GB, ga_IE, ga_IE_#Latn, gd, gd_GB, gd_GB_#Latn, gl, gl_ES, gl_ES_#Latn, gsw, gsw_CH, gsw_CH_#Latn, gsw_FR, gsw_LI, gu, gu_IN, gu_IN_#Gujr, guz, guz_KE, guz_KE_#Latn, gv, gv_IM, gv_IM_#Latn, ha, ha_GH, ha_NE, ha_NG, ha_NG_#Latn, haw, haw_US, haw_US_#Latn, he, he_IL, he_IL_#Hebr, hi, hi_IN, hi_IN_#Deva, hr, hr_BA, hr_HR, hr_HR_#Latn, hsb, hsb_DE, hsb_DE_#Latn, hu, hu_HU, hu_HU_#Latn, hy, hy_AM, hy_AM_#Armn, ia, ia_001, ia_001_#Latn, id, id_ID, id_ID_#Latn, ig, ig_NG, ig_NG_#Latn, ii, ii_CN, ii_CN_#Yiii, is, is_IS, is_IS_#Latn, it, it_CH, it_IT, it_IT_#Latn, it_SM, it_VA, ja, ja_JP, ja_JP_#Jpan, ja_JP_JP_#u-ca-japanese, jgo, jgo_CM, jgo_CM_#Latn, jmc, jmc_TZ, jmc_TZ_#Latn, jv, jv_ID, jv_ID_#Latn, ka, ka_GE, ka_GE_#Geor, kab, kab_DZ, kab_DZ_#Latn, kam, kam_KE, kam_KE_#Latn, kde, kde_TZ, kde_TZ_#Latn, kea, kea_CV, kea_CV_#Latn, khq, khq_ML, khq_ML_#Latn, ki, ki_KE, ki_KE_#Latn, kk, kk_KZ, kk_KZ_#Cyrl, kkj, kkj_CM, kkj_CM_#Latn, kl, kl_GL, kl_GL_#Latn, kln, kln_KE, kln_KE_#Latn, km, km_KH, km_KH_#Khmr, kn, kn_IN, kn_IN_#Knda, ko, ko_KP, ko_KR, ko_KR_#Kore, kok, kok_IN, kok_IN_#Deva, ks, ks_IN, ks_IN_#Arab, ks__#Arab, ksb, ksb_TZ, ksb_TZ_#Latn, ksf, ksf_CM, ksf_CM_#Latn, ksh, ksh_DE, ksh_DE_#Latn, ku, ku_TR, ku_TR_#Latn, kw, kw_GB, kw_GB_#Latn, ky, ky_KG, ky_KG_#Cyrl, lag, lag_TZ, lag_TZ_#Latn, lb, lb_LU, lb_LU_#Latn, lg, lg_UG, lg_UG_#Latn, lkt, lkt_US, lkt_US_#Latn, ln, ln_AO, ln_CD, ln_CD_#Latn, ln_CF, ln_CG, lo, lo_LA, lo_LA_#Laoo, lrc, lrc_IQ, lrc_IR, lrc_IR_#Arab, lt, lt_LT, lt_LT_#Latn, lu, lu_CD, lu_CD_#Latn, luo, luo_KE, luo_KE_#Latn, luy, luy_KE, luy_KE_#Latn, lv, lv_LV, lv_LV_#Latn, mai, mai_IN, mai_IN_#Deva, mas, mas_KE, mas_KE_#Latn, mas_TZ, mer, mer_KE, mer_KE_#Latn, mfe, mfe_MU, mfe_MU_#Latn, mg, mg_MG, mg_MG_#Latn, mgh, mgh_MZ, mgh_MZ_#Latn, mgo, mgo_CM, mgo_CM_#Latn, mi, mi_NZ, mi_NZ_#Latn, mk, mk_MK, mk_MK_#Cyrl, ml, ml_IN, ml_IN_#Mlym, mn, mn_MN, mn_MN_#Cyrl, mni, mni_IN, mni_IN_#Beng, mni__#Beng, mr, mr_IN, mr_IN_#Deva, ms, ms_BN, ms_ID, ms_MY, ms_MY_#Latn, ms_SG, mt, mt_MT, mt_MT_#Latn, mua, mua_CM, mua_CM_#Latn, my, my_MM, my_MM_#Mymr, mzn, mzn_IR, mzn_IR_#Arab, naq, naq_NA, naq_NA_#Latn, nb, nb_NO, nb_NO_#Latn, nb_SJ, nd, nd_ZW, nd_ZW_#Latn, nds, nds_DE, nds_DE_#Latn, nds_NL, ne, ne_IN, ne_NP, ne_NP_#Deva, nl, nl_AW, nl_BE, nl_BQ, nl_CW, nl_NL, nl_NL_#Latn, nl_SR, nl_SX, nmg, nmg_CM, nmg_CM_#Latn, nn, nn_NO, nn_NO_#Latn, nnh, nnh_CM, nnh_CM_#Latn, no, no_NO, no_NO_#Latn, no_NO_NY, nus, nus_SS, nus_SS_#Latn, nyn, nyn_UG, nyn_UG_#Latn, om, om_ET, om_ET_#Latn, om_KE, or, or_IN, or_IN_#Orya, os, os_GE, os_GE_#Cyrl, os_RU, pa, pa_IN, pa_IN_#Guru, pa_PK, pa_PK_#Arab, pa__#Arab, pa__#Guru, pcm, pcm_NG, pcm_NG_#Latn, pl, pl_PL, pl_PL_#Latn, ps, ps_AF, ps_AF_#Arab, ps_PK, pt, pt_AO, pt_BR, pt_BR_#Latn, pt_CH, pt_CV, pt_GQ, pt_GW, pt_LU, pt_MO, pt_MZ, pt_PT, pt_ST, pt_TL, qu, qu_BO, qu_EC, qu_PE, qu_PE_#Latn, rm, rm_CH, rm_CH_#Latn, rn, rn_BI, rn_BI_#Latn, ro, ro_MD, ro_RO, ro_RO_#Latn, rof, rof_TZ, rof_TZ_#Latn, ru, ru_BY, ru_KG, ru_KZ, ru_MD, ru_RU, ru_RU_#Cyrl, ru_UA, rw, rw_RW, rw_RW_#Latn, rwk, rwk_TZ, rwk_TZ_#Latn, sa, sa_IN, sa_IN_#Deva, sah, sah_RU, sah_RU_#Cyrl, saq, saq_KE, saq_KE_#Latn, sat, sat_IN, sat_IN_#Olck, sat__#Olck, sbp, sbp_TZ, sbp_TZ_#Latn, sd, sd_IN, sd_IN_#Deva, sd_PK, sd_PK_#Arab, sd__#Arab, sd__#Deva, se, se_FI, se_NO, se_NO_#Latn, se_SE, seh, seh_MZ, seh_MZ_#Latn, ses, ses_ML, ses_ML_#Latn, sg, sg_CF, sg_CF_#Latn, shi, shi_MA, shi_MA_#Latn, shi_MA_#Tfng, shi__#Latn, shi__#Tfng, si, si_LK, si_LK_#Sinh, sk, sk_SK, sk_SK_#Latn, sl, sl_SI, sl_SI_#Latn, smn, smn_FI, smn_FI_#Latn, sn, sn_ZW, sn_ZW_#Latn, so, so_DJ, so_ET, so_KE, so_SO, so_SO_#Latn, sq, sq_AL, sq_AL_#Latn, sq_MK, sq_XK, sr, sr_BA, sr_BA_#Cyrl, sr_BA_#Latn, sr_CS, sr_ME, sr_ME_#Cyrl, sr_ME_#Latn, sr_RS, sr_RS_#Cyrl, sr_RS_#Latn, sr_XK_#Cyrl, sr_XK_#Latn, sr__#Cyrl, sr__#Latn, su, su_ID, su_ID_#Latn, su__#Latn, sv, sv_AX, sv_FI, sv_SE, sv_SE_#Latn, sw, sw_CD, sw_KE, sw_TZ, sw_TZ_#Latn, sw_UG, ta, ta_IN, ta_IN_#Taml, ta_LK, ta_MY, ta_SG, te, te_IN, te_IN_#Telu, teo, teo_KE, teo_UG, teo_UG_#Latn, tg, tg_TJ, tg_TJ_#Cyrl, th, th_TH, th_TH_#Thai, th_TH_TH_#u-nu-thai, ti, ti_ER, ti_ET, ti_ET_#Ethi, tk, tk_TM, tk_TM_#Latn, to, to_TO, to_TO_#Latn, tr, tr_CY, tr_TR, tr_TR_#Latn, tt, tt_RU, tt_RU_#Cyrl, twq, twq_NE, twq_NE_#Latn, tzm, tzm_MA, tzm_MA_#Latn, ug, ug_CN, ug_CN_#Arab, uk, uk_UA, uk_UA_#Cyrl, ur, ur_IN, ur_PK, ur_PK_#Arab, uz, uz_AF, uz_AF_#Arab, uz_UZ, uz_UZ_#Cyrl, uz_UZ_#Latn, uz__#Arab, uz__#Cyrl, uz__#Latn, vai, vai_LR, vai_LR_#Latn, vai_LR_#Vaii, vai__#Latn, vai__#Vaii, vi, vi_VN, vi_VN_#Latn, vun, vun_TZ, vun_TZ_#Latn, wae, wae_CH, wae_CH_#Latn, wo, wo_SN, wo_SN_#Latn, xh, xh_ZA, xh_ZA_#Latn, xog, xog_UG, xog_UG_#Latn, yav, yav_CM, yav_CM_#Latn, yi, yi_001, yi_001_#Hebr, yo, yo_BJ, yo_NG, yo_NG_#Latn, yue, yue_CN, yue_CN_#Hans, yue_HK, yue_HK_#Hant, yue__#Hans, yue__#Hant, zgh, zgh_MA, zgh_MA_#Tfng, zh, zh_CN, zh_CN_#Hans, zh_HK, zh_HK_#Hans, zh_HK_#Hant, zh_MO, zh_MO_#Hans, zh_MO_#Hant, zh_SG, zh_SG_#Hans, zh_TW, zh_TW_#Hant, zh__#Hans, zh__#Hant, zu, zu_ZA, zu_ZA_#Latn Operating System Metrics: Provider: cgroupv2 Effective CPU Count: 2 CPU Period: 100000us CPU Quota: 200000us CPU Shares: 1024us List of Processors: N/A List of Effective Processors, 16 total: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 List of Memory Nodes: N/A List of Available Memory Nodes, 1 total: 0 Memory Limit: 8.00G Memory Soft Limit: 0.00K Memory & Swap Limit: 8.00G Maximum Processes Limit: 203505 Installing org.anotherfraud.excel.feature.feature.group 1.0.0.v202503022203. Installation failed. Cannot complete the install because one or more required items could not be found. Software being installed: AF Utility Nodes 1.0.0.v202503022203 (org.anotherfraud.excel.feature.feature.group 1.0.0.v202503022203) Missing requirement: ExcelPasswordManager-Node extension for KNIME Workbench 1.0.0.v202503022203 (org.AnotherFraudExcel.PasswordManager 1.0.0.v202503022203) requires 'osgi.bundle; org.apache.httpcomponents.fluent-hc [4.5.10,6.0.0)' but it could not be found Cannot satisfy dependency: From: AF Utility Nodes 1.0.0.v202503022203 (org.anotherfraud.excel.feature.feature.group 1.0.0.v202503022203) To: org.eclipse.equinox.p2.iu; org.AnotherFraudExcel.PasswordManager [1.0.0.v202503022203,1.0.0.v202503022203] !SESSION 2026-03-12 14:41:54.256 ----------------------------------------------- eclipse.buildId=unknown java.version=17.0.5 java.vendor=Eclipse Adoptium BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en Framework arguments: -application org.eclipse.equinox.p2.director -r https://update.knime.com/community-contributions/trusted/5.8 -i org.anotherfraud.excel.feature.feature.group, Command-line arguments: -os linux -ws gtk -arch x86_64 -application org.eclipse.equinox.p2.director -consolelog -r https://update.knime.com/community-contributions/trusted/5.8 -i org.anotherfraud.excel.feature.feature.group, !ENTRY org.eclipse.equinox.p2.director 4 10053 2026-03-12 14:41:58.314 !MESSAGE Cannot complete the install because one or more required items could not be found. !SUBENTRY 1 org.eclipse.equinox.p2.director 4 0 2026-03-12 14:41:58.314 !MESSAGE Software being installed: AF Utility Nodes 1.0.0.v202503022203 (org.anotherfraud.excel.feature.feature.group 1.0.0.v202503022203) !SUBENTRY 1 org.eclipse.equinox.p2.director 4 0 2026-03-12 14:41:58.314 !MESSAGE Missing requirement: ExcelPasswordManager-Node extension for KNIME Workbench 1.0.0.v202503022203 (org.AnotherFraudExcel.PasswordManager 1.0.0.v202503022203) requires 'osgi.bundle; org.apache.httpcomponents.fluent-hc [4.5.10,6.0.0)' but it could not be found !SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2026-03-12 14:41:58.314 !MESSAGE Cannot satisfy dependency: !SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2026-03-12 14:41:58.314 !MESSAGE From: AF Utility Nodes 1.0.0.v202503022203 (org.anotherfraud.excel.feature.feature.group 1.0.0.v202503022203) !SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2026-03-12 14:41:58.314 !MESSAGE To: org.eclipse.equinox.p2.iu; org.AnotherFraudExcel.PasswordManager [1.0.0.v202503022203,1.0.0.v202503022203] There were errors. See log file: /home/knime/knime/configuration/1773326514359.log error building image: error building stage: failed to execute command: waiting for process to exit: exit status 13

Here is the Dockerfile:

# Define the base image
FROM knime/knime-lts-full:r-5.8.2-139

# No proxy set

# Define the list of update sites and features
ENV KNIME_UPDATE_SITES="https://update.knime.com/community-contributions/trusted/5.8"

# Install features from the update sites
ENV KNIME_FEATURES="org.anotherfraud.excel.feature.feature.group"

# Install CA Certificates
USER root
RUN  apt-get update && \ 
apt-get install -y ca-certificates && \ 
update-ca-certificates && \ 
rm -rf /var/lib/apt/lists/*

USER knime

# Execute extension installation script
RUN ./install-extensions.sh

# No R Setup

# START Conda setup
# Download and install Miniforge, a miniconda installer configured to use conda-forge only
USER root
RUN apt-get update &&\
    apt-get install curl bzip2 --yes && \
    apt-get clean
USER knime
# download and install miniforge
# Note: '/home/knime/miniconda3' is the default path where KNIME will look for conda.
# If conda is found at a different location, you need to configure KNIME
# to look for conda there via a customization profile. See
# https://docs.knime.com/latest/python_installation_guide/index.html#executor
# for detailed documentation and
# https://hub.knime.com/-/spaces/-/~CbbkOSFJ-SXFfvxn/most-recent/
# for a data app to assist you with customization profiles.
ENV CONDA_DIR=/home/knime/miniconda3
RUN curl -L -O "https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-$(uname)-$(uname -m).sh" && \
    bash Miniforge3-$(uname)-$(uname -m).sh -b -p $CONDA_DIR && \
    rm Miniforge3-$(uname)-$(uname -m).sh && \
    # initialize conda to e.g. set path variable
    $CONDA_DIR/bin/conda init
# Add conda to the PATH
ENV PATH=$CONDA_DIR/bin:${PATH}
# END Conda setup

# START Preinstall conda environment
RUN printf "%s\n" \
    "name: knime_pike_env" \
    "channels:" \
    "  - conda-forge" \
    "  - knime" \
    "dependencies:" \
    "  - python=3.11" \
    "  - pip" \
    "  - knime-python-base=5.6.0" \
    "  - knime-python-scripting=5.6.0" \
    "" \
    "  # Core data science" \
    "  - pandas" \
    "  - numpy" \
    "  - scipy" \
    "  - scikit-learn" \
    "  - statsmodels" \
    "  - patsy" \
    "  - seaborn" \
    "  - matplotlib-base" \
    "  - plotly" \
    "" \
    "  # File formats" \
    "  - pyarrow" \
    "  - openpyxl" \
    "  - pyyaml" \
    "  - lxml" \
    "  - pillow" \
    "  - pikepdf" \
    "  - qpdf" \
    "" \
    "  # Networking / parsing" \
    "  - requests" \
    "  - charset-normalizer" \
    "  - idna" \
    "  - urllib3" \
    "  - beautifulsoup4" \
    "" \
    "  # Text/NLP" \
    "  - nltk" \
    "" \
    "  # Utilities" \
    "  - cloudpickle" \
    "  - packaging" \
    "  - joblib" \
    "  - tqdm" \
    "  - jsonschema" \
    "  - colorama" \
    "  - click" \
    "" \
    "  # IPython tools" \
    "  - ipython" \
    "  - jedi" \
    "  - pygments" \
    > /tmp/knime_pike_env.yml
# A quirk in kaniko, which is the basis of the image builder service, does not allow non-root users to create conda environments.
# This is only relevant during building of the image.
USER root
# add conda to PATH if it wasn't already. If a different path for conda was used, adjust it here
ENV CONDA_DIR=/home/knime/miniconda3
ENV PATH=$CONDA_DIR/bin:${PATH}
RUN conda env create -f /tmp/knime_pike_env.yml && \
    conda clean --all --yes && \
    # give it back to user knime
    chown -R knime:knime $CONDA_DIR && \
    # (Optional) Initialize conda in this shell, so that "conda activate" works when running the image in a shell
    conda init bash
USER knime
# END Preinstall conda environment

# pre-start executor to improve startup time
RUN KNIME_EXECUTOR_CONNECTION_RETRIES=0 knime/knime -data /home/knime/knime-workspace -consolelog -nosplash -application com.knime.enterprise.slave.KNIME_REMOTE_APPLICATION; rm -rf /home/knime/knime-workspace

And here is the yml Conda environment:

name: knime_pike_env
channels:
  - conda-forge
  - knime
dependencies:
  - python=3.11
  - pip
  - knime-python-base=5.6.0
  - knime-python-scripting=5.6.0

  # Core data science
  - pandas
  - numpy
  - scipy
  - scikit-learn
  - statsmodels
  - patsy
  - seaborn
  - matplotlib-base
  - plotly

  # File formats
  - pyarrow
  - openpyxl
  - pyyaml
  - lxml
  - pillow
  - pikepdf
  - qpdf

  # Networking / parsing
  - requests
  - charset-normalizer
  - idna
  - urllib3
  - beautifulsoup4

  # Text/NLP
  - nltk

  # Utilities
  - cloudpickle
  - packaging
  - joblib
  - tqdm
  - jsonschema
  - colorama
  - click

  # IPython tools
  - ipython
  - jedi
  - pygments

Update: Sorry for not posting the solution earlier as I was away for most of April.

KNIME Support replied promptly and provided me with the necessary fix. After updating to Executor Image Management 3.7 workflow version and using the following dockerfile, the build completed successfully.

I am attaching their reply verbatim:

I ran some tests with the Dockerfile you sent over. There were a couple of issues in the file as it was provided. First, the dependency problem you faced when installing the AF Utility Nodes extension. I fixed that by adding the core repository, just like I mentioned yesterday. However, I also encountered and issue with the Miniforge3 installation. Since your base image is a ‘full’ one, it already includes the miniconda3 folder and miniforge3. Trying to install miniforge3 again caused it to fail. To fix this, I simply commented out that part of the file, and the image built successfully. I suspect these problems might be due to either a configuration error, or a bug in the Executor Image Manager app version you’re using. Please double-check that you’re on the latest version.

Here’s the corrected Dockerfile:

FROM knime/knime-lts-full:r-5.8.2-139



# No proxy set



# Define the list of update sites and features

ENV KNIME_UPDATE_SITES="https://update.knime.com/analytics-platform/lts/5.8/5.8.2, https://update.knime.com/community-contributions/trusted/5.8"



# Install features from the update sites

ENV KNIME_FEATURES="org.anotherfraud.excel.feature.feature.group"



# Install CA Certificates

USER root

RUN  apt-get update && \

apt-get install -y ca-certificates && \

update-ca-certificates && \

rm -rf /var/lib/apt/lists/*



USER knime



# Execute extension installation script

RUN ./install-extensions.sh



# No R Setup



# START Conda setup



# Download and install Miniforge, a miniconda installer configured to use conda-forge only

USER root

RUN apt-get update &&\

    apt-get install curl bzip2 --yes && \

    apt-get clean

USER knime



# download and install miniforge



# Note: '/home/knime/miniconda3' is the default path where KNIME will look for conda.

# If conda is found at a different location, you need to configure KNIME

# to look for conda there via a customization profile. See

# https://docs.knime.com/latest/python_installation_guide/index.html#executor

# for detailed documentation and

# https://hub.knime.com/-/spaces/-/~CbbkOSFJ-SXFfvxn/most-recent/

# for a data app to assist you with customization profiles.



ENV CONDA_DIR=/home/knime/miniconda3

#RUN curl -L -O "https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-$(uname)-$(uname -m).sh" && \

#    bash Miniforge3-$(uname)-$(uname -m).sh -b -p $CONDA_DIR && \

#    rm Miniforge3-$(uname)-$(uname -m).sh && \

#    # initialize conda to e.g. set path variable

#    $CONDA_DIR/bin/conda init



# Add conda to the PATH

ENV PATH=$CONDA_DIR/bin:${PATH}



# END Conda setup



# START Preinstall conda environment

RUN printf "%s\n" \

    "name: knime_pike_env" \

    "channels:" \

    "  - conda-forge" \

    "  - knime" \

    "dependencies:" \

    "  - python=3.11" \

    "  - pip" \

    "  - knime-python-base=5.6.0" \

    "  - knime-python-scripting=5.6.0" \

    "" \

    "  # Core data science" \

    "  - pandas" \

    "  - numpy" \

    "  - scipy" \

    "  - scikit-learn" \

    "  - statsmodels" \

    "  - patsy" \

    "  - seaborn" \

    "  - matplotlib-base" \

    "  - plotly" \

    "" \

    "  # File formats" \

    "  - pyarrow" \

    "  - openpyxl" \

    "  - pyyaml" \

    "  - lxml" \

    "  - pillow" \

    "  - pikepdf" \

    "  - qpdf" \

    "" \

    "  # Networking / parsing" \

    "  - requests" \

    "  - charset-normalizer" \

    "  - idna" \

    "  - urllib3" \

    "  - beautifulsoup4" \

    "" \

    "  # Text/NLP" \

    "  - nltk" \

    "" \

    "  # Utilities" \

    "  - cloudpickle" \

    "  - packaging" \

    "  - joblib" \

    "  - tqdm" \

    "  - jsonschema" \

    "  - colorama" \

    "  - click" \

    "" \

    "  # IPython tools" \

    "  - ipython" \

    "  - jedi" \

    "  - pygments" \

    > /tmp/knime_pike_env.yml



    # A quirk in kaniko, which is the basis of the image builder service, does not allow non-root users to create conda environments.



# This is only relevant during building of the image.

USER root



# add conda to PATH if it wasn't already. If a different path for conda was used, adjust it here

ENV CONDA_DIR=/home/knime/miniconda3

ENV PATH=$CONDA_DIR/bin:${PATH}

RUN conda env create -f /tmp/knime_pike_env.yml && \

    conda clean --all --yes && \

    # give it back to user knime

    chown -R knime:knime $CONDA_DIR && \

    # (Optional) Initialize conda in this shell, so that "conda activate" works when running the image in a shell

    conda init bash

USER knime



# END Preinstall conda environment

 

# pre-start executor to improve startup time

RUN KNIME_EXECUTOR_CONNECTION_RETRIES=0 knime/knime -data /home/knime/knime-workspace -consolelog -nosplash -application com.knime.enterprise.slave.KNIME_REMOTE_APPLICATION; rm -rf /home/knime/knime-workspace