s3cmd with S3 and instance credentials broken with 12.4.0
## Summary The 12.4.0 `task-runner` images upgrade Python from 2.7 to 3.7, which breaks `s3cmd` in various situations. ## Steps to reproduce Run the `backup-utility` to backup or restore from AWS S3 with IAM credentials from instance metadata, Kiam or (presumably) Kube2iam. ## Configuration used ```yaml global: hosts: minio: enabled: false appConfig: lfs: bucket: git-lfs.gitlab.example.com artifacts: bucket: artifacts.gitlab.example.com uploads: bucket: uploads.gitlab.example.com packages: bucket: packages.gitlab.example.com backups: bucket: backups.gitlab.example.com tmpBucket: backups-temp.gitlab.example.com registry: bucket: registry.gitlab.example.com gitlab: task-runner: annotations: iam.amazonaws.com/role: GitLab-IAM-Role-Name backups: objectStorage: config: secret: gitlab-s3 key: s3cmd-config ``` This particular example uses Kiam, hence the annotation on the `task-runner` pods. Irrelevant config removed. ## Current behavior ``` Attempting to run '/bin/bash -c cp /etc/gitlab/.s3cfg $HOME/.s3cfg && backup-utility' as a main process WARNING: This version of GitLab depends on gitlab-shell 10.2.0, but you're running Unknown. Please update gitlab-shell. 2019-10-24 10:52:04 +0000 -- Dumping database ... Dumping PostgreSQL database gitlab ... [DONE] 2019-10-24 10:52:16 +0000 -- done WARNING: This version of GitLab depends on gitlab-shell 10.2.0, but you're running Unknown. Please update gitlab-shell. 2019-10-24 10:52:31 +0000 -- Dumping repositories ... [...] 2019-10-24 10:52:54 +0000 -- done Bucket not found: registry.gitlab.example.com. Skipping backup of registry ... Bucket not found: uploads.gitlab.example.com. Skipping backup of uploads ... Bucket not found: artifacts.gitlab.example.com. Skipping backup of artifacts ... Bucket not found: git-lfs.gitlab.example.com. Skipping backup of lfs ... Bucket not found: packages.gitlab.example.com. Skipping backup of packages ... WARNING: This version of GitLab depends on gitlab-shell 10.2.0, but you're running Unknown. Please update gitlab-shell. Packing up backup tar ERROR: /home/git/.s3cfg: None ERROR: Configuration file not available. ERROR: Consider using --configure parameter to create one. ``` The buckets to back up from are skipped, and the backup can't be uploaded to S3. ## Expected behavior Should be obvious! This worked before 12.4.0 though. ## Versions - Chart: `2.4.0` and `2.4.1` - Platform: - Cloud: EKS - Kubernetes: (`kubectl version`) - Client: `v1.16.2` - Server: `v1.14.6-eks-5047ed` - Helm: (`helm version`) - Client: `v2.14.3` - Server: `v2.14.3` ## Relevant logs See above.
issue