Skip to content

chore: release main #12001

chore: release main

chore: release main #12001

Workflow file for this run

on:
- pull_request
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
name: api-build
jobs:
api_changes:
runs-on: [ARM64, self-hosted, Linux]
permissions:
pull-requests: read
outputs:
run_api_ci: ${{ steps.filter.outputs.dependencies }}
steps:
- name: Check for changed files
uses: dorny/paths-filter@v2
id: filter
with:
filters: |
dependencies:
- '.github/**'
- 'api/**'
- 'shared/**'
- Dockerfile.api
build-api:
needs: api_changes
if: ${{ needs.api_changes.outputs.run_api_ci == 'true' }}
runs-on: [ARM64, self-hosted, Linux]
permissions:
id-token: write
contents: read
steps:
- name: Assume happy-api deployement role
uses: aws-actions/configure-aws-credentials@v1
with:
aws-region: us-west-2
role-to-assume: ${{ secrets.AWS_ROLE_TO_ASSUME_DEV }}
role-duration-seconds: 1200
role-session-name: HappyApiBuildContainer
- uses: actions/checkout@v3
- name: Install happy
uses: chanzuckerberg/github-actions/.github/actions/[email protected]
with:
version_lock_file: api/.happy/version.lock
- name: Happy Build
working-directory: api
run: happy build --aws-profile ""
lint-api:
needs: api_changes
if: ${{ needs.api_changes.outputs.run_api_ci == 'true' }}
runs-on: [ARM64, self-hosted, Linux]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
with:
go-version-file: api/go.mod
cache: true
- name: Run go mod tidy
working-directory: api
run: go mod tidy
- name: golangci-lint
uses: golangci/golangci-lint-action@v3
with:
version: v1.56.2
github-token: ${{ secrets.GITHUB_TOKEN }}
args: --timeout 10m0s --out-format=tab
skip-pkg-cache: true
working-directory: api
test-api:
needs: api_changes
if: ${{ needs.api_changes.outputs.run_api_ci == 'true' }}
runs-on: [ARM64, self-hosted, Linux]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
with:
go-version-file: api/go.mod
cache: true
- name: Run go mod tidy
working-directory: api
run: go mod tidy
- name: Run tests
working-directory: api
run: make test