Actions
Bug #24837
openRudder 8.0.6 : Archive exported from Rudder won't import : technique parameter without name
Pull Request:
Severity:
Minor - inconvenience | misleading | easy workaround
UX impact:
User visibility:
Infrequent - complex configurations | third party integrations
Effort required:
Priority:
0
Name check:
To do
Fix check:
To do
Regression:
No
Description
An archive that was exported from Rudder 8.0.6 cannot be imported back into a fresh Rudder 8.0.6 server.
The import error message is :
{"action":"import","result":"error","errorDetails":"error when committing Technique '*REDACTED*/1.0'; cause was: Unexpected: Error when trying to compile technique '/var/rudder/configuration-repository/techniques/ncf_techniques/*REDACTED*/1.0'. Error details are available in `compilation-output.yml` file in the same directory. Error message: 'Exit code=2 for technique: '/var/rudder/configuration-repository/techniques/ncf_techniques/*REDACTED*/1.0'.'"}
The compilation-output.yml
file contains :
compiler: rudderc fallbacked: false resultCode: 2 fileStatus: [] msg: 'Exit code=2 for technique: ''/var/rudder/configuration-repository/techniques/ncf_techniques/*REDACTED*/1.0''.' stdout: |2 Read 182 methods ERROR rudderc::compiler: jsonschema validation failed with https://docs.rudder.io/schemas/technique.schema.json# - at '/params/0/name' [S#/$defs/techniqueParameter/properties/name/pattern]: '' does not match pattern '^[a-zA-Z0-9_]+$' ERROR rudderc: 1 error(s) were encountered when reading technique stderr: ''
The technique.yml
file contains :
id: *REDACTED* name: *REDACTED* version: '1.0' category: ncf_techniques params: - id: *REDACTED* name: '' description: '' documentation: '' constraints: allow_empty: true items: - id: *REDACTED* name: /etc/apt.conf.d/20auto-upgrades condition: ubuntu method: file_content params: path: /etc/apt.conf.d/20auto-upgrades lines: |- APT::Periodic::Update-Package-Lists "1"; APT::Periodic::Unattended-Upgrade "1"; APT::Periodic::Download-Upgradeable-Packages "1"; APT::Periodic::AutocleanInterval "7" enforce: 'false'
It seems that Rudder could save an export a technique with an unnamed, undescribed and unused parameter, but that importing back the same technique will fail with a control that a parameter has a valid name.
Actions