CRITICAL: Read and analyze this microservice before starting. Do NOT explore or analyze other microservices. The instructions in this skill are self-contained to this microservice.
IMPORTANT: This skill affects a single microservice and all file names are relative to the directory of the microservice.
Workflow
Copy this checklist and track your progress:
Upgrade a microservice to v1.23.0:
- [ ] Step 1: Verify framework version
- [ ] Step 2: Update manifest.yaml
- [ ] Step 3: Regenerate boilerplate
- [ ] Step 4: Update framework version
Step 1: Verify Framework Version
If the frameworkVersion in manifest.yaml is 1.23.0 or later, the microservice is already upgraded. Exit without doing anything.
Step 2: Update manifest.yaml
Update manifest.yaml to match the new spec:
- Configs: Replace the
typeproperty with asignatureproperty that describes the getter, in the formConfigName() (returnName returnType). Look at the getter function inintermediate.go(search forMARKER: ConfigName) to determine the return argument name and type. - Configs: Add
secret: truefor configs that usecfg.Secret()in theirDefineConfigcall inintermediate.go. - Configs: Add
callback: truefor configs that have a correspondingif changed("ConfigName")entry indoOnConfigChangedinintermediate.go. - Metrics: Add a
signatureproperty that describes the value type and labels, in the formMetricName(value valueType, label1 string, label2 string). Look at theRecordMetricNameorIncrementMetricNamefunction inintermediate.go(search forMARKER: MetricName) to determine the arguments. - Tickers: Add a
signatureproperty in the formTickerName().
Step 3: Regenerate Boilerplate
Follow the regenerate-boilerplate skill to regenerate the boilerplate files of the microservice.
Step 4: Update Framework Version
In manifest.yaml, set frameworkVersion to 1.23.0.
Source: microbus-io/fabric — distributed by TomeVault.