|
643 | 643 | buildInputs = with pkgs; [
|
644 | 644 | packer
|
645 | 645 | awscli2
|
646 |
| - docker |
647 | 646 | yq
|
648 | 647 | jq
|
649 | 648 | openssl
|
650 | 649 | pythonEnv
|
651 | 650 | git
|
652 | 651 | coreutils
|
| 652 | + aws-vault |
653 | 653 | ];
|
654 | 654 | } ''
|
655 | 655 | mkdir -p $out/bin
|
|
660 | 660 | export PATH="${pkgs.lib.makeBinPath (with pkgs; [
|
661 | 661 | packer
|
662 | 662 | awscli2
|
663 |
| - docker |
664 | 663 | yq
|
665 | 664 | jq
|
666 | 665 | openssl
|
667 | 666 | pythonEnv
|
668 | 667 | git
|
669 | 668 | coreutils
|
| 669 | + aws-vault |
670 | 670 | ])}:$PATH"
|
671 | 671 |
|
672 | 672 | # Check for required tools
|
673 |
| - for cmd in packer aws docker yq jq openssl; do |
| 673 | + for cmd in packer aws-vault yq jq openssl; do |
674 | 674 | if ! command -v $cmd &> /dev/null; then
|
675 | 675 | echo "Error: $cmd is required but not found"
|
676 | 676 | exit 1
|
677 | 677 | fi
|
678 | 678 | done
|
679 | 679 |
|
680 |
| - # Check AWS credentials |
681 |
| - if [ -z "''${AWS_ACCESS_KEY_ID:-}" ] || [ -z "''${AWS_SECRET_ACCESS_KEY:-}" ]; then |
682 |
| - echo "Error: AWS credentials (AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY) must be set" |
| 680 | + # Check AWS Vault profile |
| 681 | + if [ -z "''${AWS_VAULT:-}" ]; then |
| 682 | + echo "Error: AWS_VAULT environment variable must be set with the profile name" |
| 683 | + echo "Usage: aws-vault exec supabase-dev -- nix run .#testinfra-env 15" |
683 | 684 | exit 1
|
684 | 685 | fi
|
685 | 686 |
|
|
694 | 695 | PG_VERSION=$(yq -r ".postgres_release[\"postgres$POSTGRES_VERSION\"]" ansible/vars.yml)
|
695 | 696 | echo "postgres-version = \"$PG_VERSION\"" > common-nix.vars.pkr.hcl
|
696 | 697 |
|
697 |
| - # Create docker builder context |
698 |
| - docker context create builders || true |
699 |
| - docker buildx create --use --name builders builders || true |
700 |
| -
|
701 | 698 | # Build AMI Stage 1
|
702 | 699 | packer init amazon-arm64-nix.pkr.hcl
|
703 | 700 | packer build \
|
|
708 | 705 | -var "ansible_arguments=" \
|
709 | 706 | -var "postgres-version=$RANDOM_STRING" \
|
710 | 707 | -var "region=$REGION" \
|
711 |
| - -var "ami_regions=$REGION" \ |
| 708 | + -var 'ami_regions=["'"$REGION"'"]' \ |
712 | 709 | -var "force-deregister=true" \
|
713 | 710 | -var "ansible_arguments=-e postgresql_major=$POSTGRES_VERSION" \
|
714 | 711 | amazon-arm64-nix.pkr.hcl
|
|
723 | 720 | -var-file="common-nix.vars.pkr.hcl" \
|
724 | 721 | -var "postgres-version=$RANDOM_STRING" \
|
725 | 722 | -var "region=$REGION" \
|
726 |
| - -var "ami_regions=$REGION" \ |
| 723 | + -var 'ami_regions=["'"$REGION"'"]' \ |
727 | 724 | -var "force-deregister=true" \
|
728 | 725 | -var "git_sha=$GIT_SHA" \
|
729 | 726 | stage2-nix-psql.pkr.hcl
|
|
1101 | 1098 | basePackages.testinfra-env
|
1102 | 1099 | dbmate
|
1103 | 1100 | nushell
|
| 1101 | + pythonEnv |
1104 | 1102 | ];
|
1105 | 1103 | shellHook = ''
|
1106 | 1104 | export HISTFILE=.history
|
|
0 commit comments