Merge pull request #2962 from ASFHyP3/dependabot/github_actions/githu… #81
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Deploy custom test stacks to AWS | |
| on: | |
| push: | |
| branches: | |
| - develop | |
| concurrency: ${{ github.workflow }}-${{ github.ref }} | |
| jobs: | |
| deploy: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - environment: hyp3-a19-jpl-test | |
| domain: hyp3-a19-jpl-test.asf.alaska.edu | |
| template_bucket: cf-templates-v4pvone059de-us-west-2 | |
| image_tag: test | |
| product_lifetime_in_days: 14 | |
| default_credits_per_user: 0 | |
| default_application_status: APPROVED | |
| cost_profile: DEFAULT | |
| job_files: >- | |
| job_spec/ARIA_AUTORIFT.yml | |
| job_spec/ARIA_RAIDER.yml | |
| job_spec/ARIA_S1_COSEIS.yml | |
| job_spec/INSAR_ISCE.yml | |
| instance_types: m6id.xlarge,m6id.2xlarge,m6id.4xlarge,m6id.8xlarge,m6idn.xlarge,m6idn.2xlarge,m6idn.4xlarge,m6idn.8xlarge | |
| default_max_vcpus: 640 | |
| expanded_max_vcpus: 640 | |
| required_surplus: 0 | |
| security_environment: JPL-public | |
| ami_id: /aws/service/ecs/optimized-ami/amazon-linux-2023/recommended/image_id | |
| - environment: hyp3-tibet-jpl-test | |
| domain: hyp3-tibet-jpl-test.asf.alaska.edu | |
| template_bucket: cf-templates-1or0efwqffkgd-us-west-2 | |
| image_tag: test | |
| product_lifetime_in_days: 14 | |
| default_credits_per_user: 0 | |
| default_application_status: APPROVED | |
| cost_profile: DEFAULT | |
| job_files: >- | |
| job_spec/ARIA_AUTORIFT.yml | |
| job_spec/ARIA_RAIDER.yml | |
| job_spec/ARIA_S1_COSEIS.yml | |
| job_spec/INSAR_ISCE.yml | |
| job_spec/OPERA_DIST_S1.yml | |
| instance_types: m6id.xlarge,m6id.2xlarge,m6id.4xlarge,m6id.8xlarge,m6idn.xlarge,m6idn.2xlarge,m6idn.4xlarge,m6idn.8xlarge | |
| default_max_vcpus: 6400 | |
| expanded_max_vcpus: 6400 | |
| required_surplus: 0 | |
| security_environment: JPL-public | |
| ami_id: /aws/service/ecs/optimized-ami/amazon-linux-2023/recommended/image_id | |
| - environment: hyp3-its-live-test | |
| domain: hyp3-its-live-test.asf.alaska.edu | |
| template_bucket: cf-templates-3o5lnspmwmzg-us-west-2 | |
| image_tag: test | |
| product_lifetime_in_days: 14 | |
| default_credits_per_user: 0 | |
| default_application_status: APPROVED | |
| cost_profile: DEFAULT | |
| job_files: >- | |
| job_spec/ITS_LIVE_AUTORIFT.yml | |
| job_spec/ITS_LIVE_META.yml | |
| instance_types: r7gd.2xlarge,r7gd.4xlarge,r7gd.8xlarge | |
| default_max_vcpus: 640 | |
| expanded_max_vcpus: 640 | |
| required_surplus: 0 | |
| security_environment: JPL-public | |
| ami_id: /aws/service/ecs/optimized-ami/amazon-linux-2023/arm64/recommended/image_id | |
| - environment: hyp3-ak-fire-safe-test | |
| domain: hyp3-ak-fire-safe-test.asf.alaska.edu | |
| template_bucket: cf-templates-kc34l8cyitfn-us-west-2 | |
| image_tag: test | |
| product_lifetime_in_days: 14 | |
| default_credits_per_user: 0 | |
| default_application_status: APPROVED | |
| cost_profile: DEFAULT | |
| job_files: >- | |
| job_spec/AK_FIRE_SAFE.yml | |
| job_spec/INSAR_ISCE_BURST.yml | |
| instance_types: r6id.xlarge,r6id.2xlarge,r6id.4xlarge,r6id.8xlarge,r6idn.xlarge,r6idn.2xlarge,r6idn.4xlarge,r6idn.8xlarge | |
| default_max_vcpus: 640 | |
| expanded_max_vcpus: 640 | |
| required_surplus: 0 | |
| security_environment: ASF | |
| ami_id: /aws/service/ecs/optimized-ami/amazon-linux-2023/recommended/image_id | |
| - environment: hyp3-pism-cloud-test | |
| domain: pism-cloud-test.asf.alaska.edu | |
| template_bucket: cf-templates-1qca1gr649g17-us-west-2 | |
| image_tag: test | |
| product_lifetime_in_days: 14 | |
| default_credits_per_user: 0 | |
| default_application_status: APPROVED | |
| cost_profile: DEFAULT | |
| job_files: >- | |
| job_spec/INSAR_ISCE_BURST.yml | |
| instance_types: r6id.xlarge,r6id.2xlarge,r6id.4xlarge,r6id.8xlarge,r6idn.xlarge,r6idn.2xlarge,r6idn.4xlarge,r6idn.8xlarge | |
| default_max_vcpus: 640 | |
| expanded_max_vcpus: 640 | |
| required_surplus: 0 | |
| security_environment: ASF | |
| ami_id: /aws/service/ecs/optimized-ami/amazon-linux-2023/recommended/image_id | |
| - environment: hyp3-volcsarvatory-test | |
| domain: hyp3-volcsarvatory-test.asf.alaska.edu | |
| template_bucket: cf-templates-1uzy61g1h6omf-us-west-2 | |
| image_tag: test | |
| product_lifetime_in_days: 14 | |
| default_credits_per_user: 0 | |
| default_application_status: APPROVED | |
| cost_profile: DEFAULT | |
| job_files: >- | |
| job_spec/INSAR_GAMMA.yml | |
| job_spec/VOLCSARVATORY_MULTI_BURST.yml | |
| instance_types: r6id.xlarge,r6id.2xlarge,r6id.4xlarge,r6id.8xlarge,r6idn.xlarge,r6idn.2xlarge,r6idn.4xlarge,r6idn.8xlarge | |
| default_max_vcpus: 640 | |
| expanded_max_vcpus: 640 | |
| required_surplus: 0 | |
| security_environment: ASF | |
| ami_id: /aws/service/ecs/optimized-ami/amazon-linux-2023/recommended/image_id | |
| - environment: hyp3-lavas-test | |
| domain: hyp3-lavas-test.asf.alaska.edu | |
| template_bucket: cf-templates-10a5pjrsv3cgo-us-west-2 | |
| image_tag: test | |
| product_lifetime_in_days: 14 | |
| default_credits_per_user: 0 | |
| default_application_status: APPROVED | |
| cost_profile: DEFAULT | |
| job_files: >- | |
| job_spec/INSAR_ISCE_BURST.yml | |
| job_spec/SRG_GSLC.yml | |
| job_spec/SRG_TIME_SERIES.yml | |
| instance_types: r6id.xlarge,r6id.2xlarge,r6id.4xlarge,r6id.8xlarge,r6idn.xlarge,r6idn.2xlarge,r6idn.4xlarge,r6idn.8xlarge | |
| default_max_vcpus: 640 | |
| expanded_max_vcpus: 640 | |
| required_surplus: 0 | |
| security_environment: ASF | |
| ami_id: /aws/service/ecs/optimized-ami/amazon-linux-2023/recommended/image_id | |
| environment: | |
| name: ${{ matrix.environment }} | |
| url: https://${{ matrix.domain }} | |
| steps: | |
| - uses: actions/[email protected] | |
| with: | |
| fetch-depth: 0 | |
| - uses: aws-actions/configure-aws-credentials@v5 | |
| with: | |
| aws-access-key-id: ${{ secrets.V2_AWS_ACCESS_KEY_ID }} | |
| aws-secret-access-key: ${{ secrets.V2_AWS_SECRET_ACCESS_KEY }} | |
| aws-session-token: ${{ secrets.V2_AWS_SESSION_TOKEN }} | |
| aws-region: ${{ secrets.AWS_REGION }} | |
| - uses: actions/setup-python@v6 | |
| with: | |
| python-version: 3.13 | |
| - run: | | |
| jq -n '{"Parameters": $ARGS.named}' \ | |
| --arg VpcId '${{ secrets.VPC_ID }}' \ | |
| --arg SubnetIds '${{ secrets.SUBNET_IDS }}' \ | |
| --arg SecretArn '${{ secrets.SECRET_ARN }}' \ | |
| --arg ImageTag '${{ matrix.IMAGE_TAG }}' \ | |
| --arg ProductLifetimeInDays '${{ matrix.product_lifetime_in_days }} ' \ | |
| --arg AuthPublicKey '${{ secrets.AUTH_PUBLIC_KEY }}' \ | |
| --arg DefaultCreditsPerUser '${{ matrix.default_credits_per_user }}' \ | |
| --arg DefaultApplicationStatus '${{ matrix.default_application_status }}' \ | |
| --arg AmiId '${{ matrix.ami_id }}' \ | |
| --arg DefaultMaxvCpus '${{ matrix.default_max_vcpus }}' \ | |
| --arg ExpandedMaxvCpus '${{ matrix.expanded_max_vcpus }}' \ | |
| --arg MonthlyBudget '${{ secrets.MONTHLY_BUDGET }}' \ | |
| --arg RequiredSurplus '${{ matrix.required_surplus }}' \ | |
| --arg InstanceTypes '${{ matrix.instance_types }}' \ | |
| --arg DomainName '${{ matrix.domain }}' \ | |
| --arg CertificateArn '${{ secrets.CERTIFICATE_ARN }}' \ | |
| > parameters.json | |
| - uses: ./.github/actions/deploy-hyp3 | |
| with: | |
| TEMPLATE_BUCKET: ${{ matrix.template_bucket }} | |
| STACK_NAME: ${{ matrix.environment }} | |
| API_NAME: ${{ matrix.environment }} | |
| CLOUDFORMATION_ROLE_ARN: ${{ secrets.CLOUDFORMATION_ROLE_ARN }} | |
| COST_PROFILE: ${{ matrix.cost_profile }} | |
| JOB_FILES: ${{ matrix.job_files }} | |
| SECURITY_ENVIRONMENT: ${{ matrix.security_environment }} | |
| PARAMETER_FILE: parameters.json |