Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add opera-disp-sandbox #2502

Merged
merged 31 commits into from
Dec 7, 2024
Merged
Show file tree
Hide file tree
Changes from 28 commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
81cfcd5
add opera-disp-sandbox
jtherrmann Nov 20, 2024
42e0d6a
add job spec for opera-disp-tms
forrestfwilliams Nov 22, 2024
bc34a60
fix api schema
forrestfwilliams Nov 22, 2024
472bad6
update changelog
forrestfwilliams Nov 22, 2024
a0fb202
Update job_spec/OPERA_DISP_TMS.yml
forrestfwilliams Nov 26, 2024
4d582f4
Merge branch 'develop' into opera_disp
jtherrmann Nov 26, 2024
5f454e1
Update .github/workflows/deploy-opera-disp-sandbox.yml
jtherrmann Nov 26, 2024
587398d
Update .github/workflows/deploy-opera-disp-sandbox.yml
jtherrmann Nov 26, 2024
a7be25a
Update .github/workflows/deploy-opera-disp-sandbox.yml
jtherrmann Nov 26, 2024
90ae079
Merge branch 'develop' into opera-disp-sandbox
jtherrmann Nov 26, 2024
accbc0e
Merge branch 'opera_disp' into opera-disp-sandbox
jtherrmann Dec 3, 2024
9986749
image tag for opera disp tms job
jtherrmann Dec 3, 2024
7669078
deploy from opera-disp-sandbox branch
jtherrmann Dec 3, 2024
0f217dd
Merge branch 'develop' into opera_disp
jtherrmann Dec 3, 2024
1ed2c50
Update CHANGELOG.md
jtherrmann Dec 3, 2024
a016eb8
Merge branch 'opera-disp-sandbox' into opera_disp
jtherrmann Dec 3, 2024
d007a98
Merge branch 'develop' into opera-disp-sandbox
jtherrmann Dec 3, 2024
7a77528
Merge branch 'opera-disp-sandbox' into opera_disp
jtherrmann Dec 3, 2024
e17441f
Merge pull request #2501 from ASFHyP3/opera_disp
jtherrmann Dec 3, 2024
e4997a4
add burst job
jtherrmann Dec 3, 2024
800c6aa
add todo
jtherrmann Dec 3, 2024
3ed060a
Merge branch 'opera-disp-sandbox' of github.com:ASFHyP3/hyp3 into ope…
jtherrmann Dec 3, 2024
75e984a
image tag
jtherrmann Dec 3, 2024
9f7620f
remove burst job from opera-disp-sandbox
jtherrmann Dec 4, 2024
c55167e
image tag
jtherrmann Dec 5, 2024
ca3132f
finishing touches
jtherrmann Dec 5, 2024
cd9fc83
Merge branch 'develop' into opera-disp-sandbox
jtherrmann Dec 5, 2024
d9087d8
changelog
jtherrmann Dec 5, 2024
08cf938
image tag, deploy from opera-disp-sandbox branch
jtherrmann Dec 6, 2024
25d0d5b
image tag
jtherrmann Dec 7, 2024
3176ebb
revert testing changes
jtherrmann Dec 7, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
80 changes: 80 additions & 0 deletions .github/workflows/deploy-opera-disp-sandbox.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
name: Deploy OPERA-DISP Sandbox Stack 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-opera-disp-sandbox
domain: hyp3-opera-disp-sandbox.asf.alaska.edu
template_bucket: cf-templates-1hz9ldhhl4ahu-us-west-2
image_tag: test
product_lifetime_in_days: 14
default_credits_per_user: 0
default_application_status: APPROVED
cost_profile: DEFAULT
deploy_ref: refs/heads/develop
job_files: >-
job_spec/OPERA_DISP_TMS.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
distribution_url: ''

environment:
name: ${{ matrix.environment }}
url: https://${{ matrix.domain }}

steps:
- uses: actions/[email protected]

- uses: aws-actions/configure-aws-credentials@v4
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@v5
with:
python-version: 3.9

- uses: ./.github/actions/deploy-hyp3
with:
TEMPLATE_BUCKET: ${{ matrix.template_bucket }}
STACK_NAME: ${{ matrix.environment }}
DOMAIN_NAME: ${{ matrix.domain }}
API_NAME: ${{ matrix.environment }}
CERTIFICATE_ARN: ${{ secrets.CERTIFICATE_ARN }}
IMAGE_TAG: ${{ matrix.image_tag }}
PRODUCT_LIFETIME: ${{ matrix.product_lifetime_in_days }}
VPC_ID: ${{ secrets.VPC_ID }}
SUBNET_IDS: ${{ secrets.SUBNET_IDS }}
SECRET_ARN: ${{ secrets.SECRET_ARN }}
CLOUDFORMATION_ROLE_ARN: ${{ secrets.CLOUDFORMATION_ROLE_ARN }}
DEFAULT_CREDITS_PER_USER: ${{ matrix.default_credits_per_user }}
DEFAULT_APPLICATION_STATUS: ${{ matrix.default_application_status }}
COST_PROFILE: ${{ matrix.cost_profile }}
JOB_FILES: ${{ matrix.job_files }}
DEFAULT_MAX_VCPUS: ${{ matrix.default_max_vcpus }}
EXPANDED_MAX_VCPUS: ${{ matrix.expanded_max_vcpus }}
MONTHLY_BUDGET: ${{ secrets.MONTHLY_BUDGET }}
REQUIRED_SURPLUS: ${{ matrix.required_surplus }}
ORIGIN_ACCESS_IDENTITY_ID: ${{ secrets.ORIGIN_ACCESS_IDENTITY_ID }}
SECURITY_ENVIRONMENT: ${{ matrix.security_environment }}
AMI_ID: ${{ matrix.ami_id }}
INSTANCE_TYPES: ${{ matrix.instance_types }}
DISTRIBUTION_URL: ${{ matrix.distribution_url }}
AUTH_PUBLIC_KEY: ${{ secrets.AUTH_PUBLIC_KEY }}
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [9.1.0]

### Added
- Add a new <https://hyp3-opera-disp-sandbox.asf.alaska.edu> deployment with an `OPERA_DISP_TMS` job type for generating tilesets for the OPERA displacement tool.

## [9.0.1]

### Changed
Expand Down
79 changes: 79 additions & 0 deletions job_spec/OPERA_DISP_TMS.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
OPERA_DISP_TMS:
required_parameters:
- tile_type
- bounds
- orbit_direction
- start_date
- end_date
parameters:
tile_type:
api_schema:
description: Type of tile map to create
type: string
enum:
- displacement
- secant_velocity
example: displacement
bounds:
api_schema:
description: Integer bounds in EPSG:4326, formatted like (minlon minlat maxlon maxlat)
type: array
minItems: 4
maxItems: 4
example:
- -121
- 38
- -120
- 39
items:
type: integer
example: -121
orbit_direction:
api_schema:
description: Orbit direction of data
type: string
enum:
- ascending
- descending
example: descending
start_date:
api_schema:
description: Start of secondary date range for which to generate a tile map (%Y%m%d)
type: string
pattern: "^\\d{8}$"
minLength: 8
maxLength: 8
example: 20200101
end_date:
api_schema:
description: End of secondary date range for which to generate a tile map (%Y%m%d)
type: string
pattern: "^\\d{8}$"
minLength: 8
maxLength: 8
example: 20200814
cost_profiles:
DEFAULT:
cost: 1.0
validators:
- check_bounds_formatting
steps:
- name: ''
image: ghcr.io/asfhyp3/opera-disp-tms
command:
- Ref::tile_type
- Ref::bounds
- Ref::orbit_direction
- Ref::start_date
- Ref::end_date
- --bucket
- '!Ref Bucket'
- --bucket-prefix
- Ref::bucket_prefix
timeout: 10800
compute_environment: Default
vcpu: 1
memory: 31500
secrets:
- EARTHDATA_USERNAME
- EARTHDATA_PASSWORD
Loading