ワンクリックで
nifi-upgrade-skill
Upgrades Apache NiFi to a target version. Updates scripts, configs, Dockerfile, pom.xml, and checks migration guidance.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Upgrades Apache NiFi to a target version. Updates scripts, configs, Dockerfile, pom.xml, and checks migration guidance.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Navigation-only skill for individual actions in netcracker/qubership-workflow-hub. Use when a workflow needs to consume a specific Qubership action (Docker build/push, version/tag rendering, Maven/npm/Python publishing, package cleanup, Helm charts, security scans, etc.) and you need to find the right action and read its authoritative README. All rules (pinning, permissions, anti-hallucination, naming) live in qubership-workflow-conventions — this skill does not restate them.
Single source of truth for Qubership GitHub Actions workflows. Use when designing, writing, reviewing, or debugging .github/workflows/*.yml that consume actions or templates from netcracker/qubership-workflow-hub or Netcracker/.github.
| name | nifi-upgrade-skill |
| description | Upgrades Apache NiFi to a target version. Updates scripts, configs, Dockerfile, pom.xml, and checks migration guidance. |
sed -n "s/.*NIFI_VERSION='\([0-9.]*\)'.*/\1/p" ./Dockerfile | head -1
bash .claude/skills/nifi-upgrade-skill/scripts/getFilesFromDocker.sh <CURRENT> <TARGET>
For each file in nifi-scripts/ (secure.sh, start.sh, common.sh, update_cluster_state_management.sh):
upgrade-temp-data/nifi-files-to-compare/scripts/<CURRENT>/<FILE> vs <TARGET>/<FILE>Same diff-and-apply process for bootstrap.conf in nifi-config/.
Diff logback.xml between versions. Apply changes to qubership-nifi-consul-templates/src/main/resources/logback-template.xml:
Diff nifi.properties between versions. Apply relevant changes to these files in qubership-nifi-consul-templates:
nifi_default.propertiesnifi_internal.propertiesnifi_internal_comments.propertiesReplace NIFI_VERSION and NIFI_VERSION_SHA256 with target values.
<nifi.version> to target.upgrade-temp-data/nifi-helper-pom.xml with parent nifi-redis-bundle:<TARGET>.mvn help:evaluate -f upgrade-temp-data/nifi-helper-pom.xml -Dexpression=<PROP> -q -DforceStdout
to extract and update in ./pom.xml:
nifi-api.version becomes <nifi-api.version>jedis.version becomes <jedis.version>spring.data.redis.version becomes <spring.data.redis.version>Fetch https://cwiki.apache.org/confluence/display/NIFI/Migration+Guidance directly with WebFetch (no subagents, they return false negatives).
Grep the whole repository for removed or renamed properties and processor/service names. Apply changes where matched.grep -rn '<term>' \
qubership-bundle/ qubership-nifi-db-bundle/ qubership-nifi-bulk-redis-service/ \
qubership-nifi-consul-templates/ nifi-config/ nifi-scripts/ \
qubership-nifi-common/ qubership-nifi-bundle-common/ \
qubership-consul/ qubership-nifi-lookup-services/ \
qubership-nifi-quarkus-consul/ qubership-services/ \
--include='*.xml' --include='*.json' --include='*.yaml' --include='*.yml' \
--include='*.properties' --include='*.sh' --include='*.java' 2>/dev/null | grep -v '/target/'
mvn clean install -DskipUnitTests=true -Dgpg.skip=true -q
mvn clean install 2>&1 | grep -E "BUILD|ERROR|FAIL|Tests run" | tail -20
Export both versions:
mvn exec:java -q -f <PROJECT_ROOT>/pom.xml \
-pl qubership-nifi-tools/qubership-nifi-api-export-tool \
-DROOT_LOG_LEVEL=ERROR \
-Dexec.args="--version <VERSION> --output-dir ./upgrade-temp-data/nifi-property-exports/<VERSION>"
Compare:
mvn exec:java -q -f <PROJECT_ROOT>/pom.xml \
-pl qubership-nifi-tools/qubership-nifi-component-comparator-tool \
-Dorg.slf4j.simpleLogger.defaultLogLevel=ERROR \
-Dexec.args="--sourceDir ./upgrade-temp-data/nifi-property-exports/<CURRENT> \
--targetDir ./upgrade-temp-data/nifi-property-exports/<TARGET> \
--outputPath ./upgrade-temp-data/nifi-property-comparison"
Inspect ./upgrade-temp-data/nifi-property-comparison/NiFiComponentsDelta.csv.
If "added/deleted" pairs are actually just Display Name renames, build dictionary.yaml:
displayNameMapping:
- ComponentName:
Old_Display_Name: New_Display_Name
Put dictionary.yaml into qubership-nifi-tools/qubership-nifi-component-comparator-tool/dictionaries/<TARGET_VER_WITH_UNDERSCORE>,
where <TARGET_VER_WITH_UNDERSCORE> is <TARGET> version, where . is replaced with _.
Then re-run the comparator with --dictionaryPath qubership-nifi-tools/qubership-nifi-component-comparator-tool/dictionaries/<TARGET_VER_WITH_UNDERSCORE>/dictionary.yaml.
mvn exec:java \
-pl qubership-nifi-tools/qubership-nifi-openapi-enricher