Skip to content

Copilot Setup Steps

Copilot Setup Steps #5

name: "Copilot Setup Steps"
# Automatically run the setup steps when they are changed to allow for easy validation, and
# allow manual testing through the repository's "Actions" tab
on:
workflow_dispatch:
push:
paths:
- .github/workflows/copilot-setup-steps.yml
pull_request:
paths:
- .github/workflows/copilot-setup-steps.yml
jobs:
# The job MUST be called `copilot-setup-steps` or it will not be picked up by Copilot.
copilot-setup-steps:
runs-on: ubuntu-24.04
# Set the permissions to the lowest permissions possible needed for your steps.
# Copilot will be given its own token for its operations.
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.25'
cache: true
cache-dependency-path: |
gateway/**/go.sum
kubernetes/**/go.sum
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Install Helm
uses: azure/setup-helm@v4
with:
version: 'latest'
- name: Install kubectl
uses: azure/setup-kubectl@v4
with:
version: 'latest'
- name: Download Go dependencies for gateway-controller
run: go mod download
working-directory: gateway/gateway-controller
- name: Download Go dependencies for policy-engine
run: go mod download
working-directory: gateway/policy-engine
- name: Download Go dependencies for router
run: go mod download
working-directory: gateway/router
- name: Download Go dependencies for gateway-operator
run: go mod download
working-directory: kubernetes/gateway-operator
- name: Build Gateway images
run: make build-local
working-directory: gateway