Skip to content

( is not a valid word #1590

@dmitry-mightydevops

Description

@dmitry-mightydevops

Issue

➜ export ENV=prod
➜ task -l       
1:12: ( is not a valid word

however I can easily run both targets:

  • task helm:render -- apps backend
  • task helm:encrypt secret=hello

At the same time if install task via DNF sudo dnf install go-task then I get proper output:

go-task --version
Task version: unknown

➜ go-task -l               
task: Available tasks for this project:
* helm:encrypt:       Encrypt secret with AWS KMS keys to be used in gitops, ex: task helm:encrypt secret=value
* helm:render:        Render argocd app manifest

Taskfile.yml

version: '3'

dotenv: ['.env', '.env.{{.ENV}}']

includes:
  helm: taskfiles/helm.tasks.yaml

taskfiles/helm.tasks.yaml

version: '3'

tasks:
  encrypt:
    desc: 'Encrypt secret with AWS KMS keys to be used in gitops, ex: task helm:encrypt secret=value'
    cmds:
      - |
        encrypted=$(
          AWS_PROFILE={{.aws_profile}} aws kms encrypt \
          --region {{.aws_region}} \
          --key-id alias/{{.helm_kms_key}} \
          --plaintext $(echo -n {{.secret}} | base64 -w 0) \
          --output text --query CiphertextBlob \
          | tr '/+' '_-'
        )

        echo "ref+awskms://$encrypted?key=alias%2F{{.helm_kms_key}}"
    silent: true

  render:
    desc: 'Render argocd app manifest'
    dir: '{{.folder}}/{{.ENV}}'
    vars:
      folder: '{{ index ($x:=splitArgs .CLI_ARGS) 0 }}'
      app: '{{ index ($x:=splitArgs .CLI_ARGS) 1 }}'
    cmds:
      - |
        helm dependency build --skip-refresh \
        && helm template . -f values.yaml -f values.ci.yaml \
          | yq 'select(.metadata.name=="{{.app}}")'
    silent: true

.env

client=client
aws_region=us-west-2

.env.prod

environment=prod
aws_profile=client/prod/administrators
helm_kms_key=client-prod-eks-helm-secrets-kms-key

  • Task version:
✗  task --version
Task version: v3.36.0 (h1:XVJ5hQ5hdzTAulHpAGzbUMUuYr9MUOEQFOFazI3hUsY=)
  • Operating system:
➜ uname -a 
Linux dmitry-desktop 6.7.5-100.fc38.x86_64 #1 SMP PREEMPT_DYNAMIC Sat Feb 17 17:21:49 UTC 2024 x86_64 GNU/Linux
  • Experiments enabled:
    N/A

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions