Skip to content

Non-scalar literals in variables are not escaped #559

@mamachanko

Description

@mamachanko

#547 was merged without successful checks and introduced a regression. Non-scalar literals in variable are no longer escaped correctly.

go test ./internal/acceptance/bake -skip 'TestDockerIntegration'
errors

Running Suite: acceptance
=========================
Random Seed: 1746596172
Will run 15 of 16 specs

Setting default credentials from ~/.kiln/credentials.yml. (hint: --variable-file overrides this default. --variable overrides both.)
Reading release manifests...
Reading stemcells from directories...
Encoding icon...
Building /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test1220549209/3402922100/cool-product-1.2.3-build.4.pivotal...
Adding metadata/metadata.yml to /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test1220549209/3402922100/cool-product-1.2.3-build.4.pivotal...
Adding migrations/v1/some_migration.js to /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test1220549209/3402922100/cool-product-1.2.3-build.4.pivotal...
Adding migrations/v1/201603041539_custom_buildpacks.js to /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test1220549209/3402922100/cool-product-1.2.3-build.4.pivotal...
Adding migrations/v1/201603071158_auth_enterprise_sso.js to /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test1220549209/3402922100/cool-product-1.2.3-build.4.pivotal...
Adding releases/diego-release-0.1467.1-3215.4.0.tgz to /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test1220549209/3402922100/cool-product-1.2.3-build.4.pivotal...
Adding releases/cf-release-235.0.0-3215.4.0.tgz to /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test1220549209/3402922100/cool-product-1.2.3-build.4.pivotal...
• Failure [1.362 seconds]
bake command
/Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:53
  generates a tile with the correct metadata [It]
  /Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:127

  error at [literal_variable]:
    type mismatch:
      Expected
          <map[interface {}]interface {}> map[some:value]
      to be of type
          <string>

  /Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:162
------------------------------
•••Setting default credentials from ~/.kiln/credentials.yml. (hint: --variable-file overrides this default. --variable overrides both.)
Reading release manifests...
Reading stemcell criteria from Kilnfile.lock
Encoding icon...
Building /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test2368558072/3407827202/cool-product-1.2.3-build.4.pivotal...
Adding metadata/metadata.yml to /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test2368558072/3407827202/cool-product-1.2.3-build.4.pivotal...
Adding migrations/v1/some_migration.js to /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test2368558072/3407827202/cool-product-1.2.3-build.4.pivotal...
Adding migrations/v1/201603041539_custom_buildpacks.js to /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test2368558072/3407827202/cool-product-1.2.3-build.4.pivotal...
Adding migrations/v1/201603071158_auth_enterprise_sso.js to /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test2368558072/3407827202/cool-product-1.2.3-build.4.pivotal...
Adding releases/diego-release-0.1467.1-3215.4.0.tgz to /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test2368558072/3407827202/cool-product-1.2.3-build.4.pivotal...
Adding releases/cf-release-235.0.0-3215.4.0.tgz to /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test2368558072/3407827202/cool-product-1.2.3-build.4.pivotal...

------------------------------
• Failure [0.132 seconds]
bake command
/Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:53
  when the --kilnfile flag is provided
  /Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:309
    generates a tile with the correct metadata including the stemcell criteria from the Kilnfile.lock [It]
    /Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:310

    error at [literal_variable]:
      type mismatch:
        Expected
            <map[interface {}]interface {}> map[some:value]
        to be of type
            <string>

    /Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:363
------------------------------
••Reading release manifests...
Reading stemcells from directories...
Encoding icon...
boolean_variable: true
custom_variable: some-variable-value
description: this is the description
icon_img: aS1hbS1zb21lLWltYWdl
install_time_verifiers:
  - name: Verifiers::SsoUrlVerifier
    properties:
      url: .properties.uaa.saml.sso_url
label: Pivotal Elastic Runtime
literal_variable:
  some: value
metadata_version: "1.7"
minimum_version_for_upgrade: 1.6.9-build.0
name: cool-product-name
post_deploy_errands:
  - name: smoke-tests
product_version: 1.2.3
provides_product_versions:
  - name: cf
    version: 1.7.0.0
rank: 90
selected_value: "235"
serial: false
some_bosh_variables:
  - name: variable-1
    options:
      some_option: Option value
    type: certificate
  - name: variable-2
    type: password
some_forms:
  - description: some-other-form-description
    label: some-other-form-label
    name: some-other-config
  - description: some-form-description
    label: some-form-label
    name: some-config
  - description: some-form-description
    label: some-form-label
    name: some-more-config
some_job_types:
  - label: Some Instance Group
    name: some-instance-group
    templates:
      - name: some-job
        release: some-release
  - label: Some Other Instance Group
    name: some-other-instance-group
    templates:
      - name: some-other-job
        release: some-other-release
some_property_blueprints:
  - configurable: false
    default: true
    name: some_templated_property_blueprint
    type: boolean
some_releases:
  - file: diego-release-0.1467.1-3215.4.0.tgz
    name: diego
    sha1: ade2a81b4bfda4eb7062cb1a9314f8941ae11d06
    version: 0.1467.1
  - file: cf-release-235.0.0-3215.4.0.tgz
    name: cf
    sha1: b383f3177e4fc4f0386b7a06ddbc3f57e7dbf09f
    version: "235"
some_runtime_configs:
  - name: some-runtime-config
    runtime_config: |
      releases:
      - name: some-addon
        version: some-addon-version
some_stemcell_criteria:
  os: ubuntu-trusty
  version: "3215.4"
kiln_metadata:
  metadata_git_sha: 94385eeb789e744103e52c471ca5339a6d2b6829

------------------------------
• Failure [60.128 seconds]
bake command
/Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:53
  when the --metadata-only flag is specified
  /Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:434
    outputs the generated metadata to stdout [It]
    /Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:460

    Timed out after 60.000s.
    error at [literal_variable]:
      type mismatch:
        Expected
            <map[interface {}]interface {}> map[some:value]
        to be of type
            <string>

    /Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:470
------------------------------
••••[bake --releases-directory fixtures/releases2 --releases-directory fixtures/releases --icon fixtures/icon --metadata fixtures/metadata-with-stemcell-criteria.yml --output-file /var/folders/0r/_173x1jn2d1bp7h4twh90hc80000gp/T/kiln-main-test1806044432/3341508679/cool-product-1.2.3-build.4.pivotal --version 1.2.3 --skip-fetch-directories]
•
------------------------------
P [PENDING]
bake command
/Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:53
  failure cases
  /Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:722
    when a release tarball does not exist
    /Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:723
      prints an error and exits 1
      /Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:724
------------------------------
••

Summarizing 3 Failures:

[Fail] bake command [It] generates a tile with the correct metadata
/Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:162

[Fail] bake command when the --kilnfile flag is provided [It] generates a tile with the correct metadata including the stemcell criteria from the Kilnfile.lock
/Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:363

[Fail] bake command when the --metadata-only flag is specified [It] outputs the generated metadata to stdout
/Users/*****/workspace/kiln/internal/acceptance/bake/bake_test.go:470

Ran 15 of 16 Specs in 73.645 seconds
FAIL! -- 12 Passed | 3 Failed | 1 Pending | 0 Skipped
--- FAIL: TestAcceptance (73.65s)
FAIL
FAIL    github.com/pivotal-cf/kiln/internal/acceptance/bake     75.037s
FAIL

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions