Skip to content

chore(deps): update actions/checkout action to v6 #11

chore(deps): update actions/checkout action to v6

chore(deps): update actions/checkout action to v6 #11

Workflow file for this run

name: Build & Release
on:
push:
branches:
- master
pull_request:
workflow_dispatch:
permissions:
contents: read
jobs:
build:
name: build-test (go ${{ matrix.go-version }})
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
go-version: ['1.21.x', '1.22.x', '1.23.x']
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Set up Go ${{ matrix.go-version }}
uses: actions/setup-go@v5
with:
go-version: ${{ matrix.go-version }}
cache: true
- name: Install golangci-lint
run: |
curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.60.3
echo "$(go env GOPATH)/bin" >> $GITHUB_PATH
- name: Build
run: make build
- name: Run unit tests
run: make unittest
- name: Run linter
run: make lint
- name: Run go mod tidy
run: make tidy
create-release:
name: semantic-release
if: github.ref == 'refs/heads/master' && github.event_name != 'pull_request'
needs: build
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Notify Slack - Release Started
run: |
curl -X POST "${{ secrets.SLACK_RELEASE_WEBHOOK_URL }}" \
-H 'Content-Type: application/json' \
-d '{
"sdk": "networking-go-sdk",
"language": "go",
"status": "started",
"actor": "${{ github.actor }}"
}'
- name: Checkout repository
uses: actions/checkout@v6
with:
fetch-depth: 0
persist-credentials: false
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 22
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: '3.13'
- name: Install publishing tools
run: |
pip install bump2version
npm ci
- name: Run semantic-release
env:
GH_TOKEN: ${{ secrets.GH_TOKEN }}
run: npx semantic-release
- name: Notify Slack - Release Completed
if: success()
run: |
curl -X POST "${{ secrets.SLACK_RELEASE_WEBHOOK_URL }}" \
-H 'Content-Type: application/json' \
-d '{
"sdk": "networking-go-sdk",
"language": "go",
"status": "completed",
"actor": "${{ github.actor }}"
}'
- name: Notify Slack - Release Failed
if: failure()
run: |
curl -X POST "${{ secrets.SLACK_RELEASE_WEBHOOK_URL }}" \
-H 'Content-Type: application/json' \
-d '{
"sdk": "networking-go-sdk",
"language": "go",
"status": "failed",
"actor": "${{ github.actor }}"
}'