Repository navigation
56 lines (49 loc) · 2.71 KB
/
Copy pathrelease.yml
File metadata and controls
56 lines (49 loc) · 2.71 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
name: Release
on:
push:
tags:
- "v*" # core module
- "redis/v*" # github.com/babelqueue/babelqueue-go/redis
- "amqp/v*" # github.com/babelqueue/babelqueue-go/amqp
- "sqs/v*" # github.com/babelqueue/babelqueue-go/sqs
- "azureservicebus/v*" # github.com/babelqueue/babelqueue-go/azureservicebus
- "pulsar/v*" # github.com/babelqueue/babelqueue-go/pulsar
- "kafka/v*" # github.com/babelqueue/babelqueue-go/kafka
- "artemis/v*" # github.com/babelqueue/babelqueue-go/artemis
- "asynq/v*" # github.com/babelqueue/babelqueue-go/asynq
- "machinery/v*" # github.com/babelqueue/babelqueue-go/machinery
- "otel/v*" # github.com/babelqueue/babelqueue-go/otel
permissions:
contents: write
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: actions/setup-go@v7
with:
go-version: "stable"
- name: Test core
run: go test -race -count=1 ./...
- name: Create GitHub Release
uses: softprops/action-gh-release@v3
with:
generate_release_notes: true
# Go modules are served by the module proxy on tag; this nudges it to index
# the tagged module (core or a transport submodule) so `go get` resolves it.
- name: Warm the Go module proxy
run: |
TAG="${GITHUB_REF_NAME}"
case "$TAG" in
redis/*) MODULE="github.com/babelqueue/babelqueue-go/redis"; VER="${TAG#redis/}" ;;
amqp/*) MODULE="github.com/babelqueue/babelqueue-go/amqp"; VER="${TAG#amqp/}" ;;
sqs/*) MODULE="github.com/babelqueue/babelqueue-go/sqs"; VER="${TAG#sqs/}" ;;
azureservicebus/*) MODULE="github.com/babelqueue/babelqueue-go/azureservicebus"; VER="${TAG#azureservicebus/}" ;;
pulsar/*) MODULE="github.com/babelqueue/babelqueue-go/pulsar"; VER="${TAG#pulsar/}" ;;
kafka/*) MODULE="github.com/babelqueue/babelqueue-go/kafka"; VER="${TAG#kafka/}" ;;
artemis/*) MODULE="github.com/babelqueue/babelqueue-go/artemis"; VER="${TAG#artemis/}" ;;
asynq/*) MODULE="github.com/babelqueue/babelqueue-go/asynq"; VER="${TAG#asynq/}" ;;
machinery/*) MODULE="github.com/babelqueue/babelqueue-go/machinery"; VER="${TAG#machinery/}" ;;
*) MODULE="github.com/babelqueue/babelqueue-go"; VER="$TAG" ;;
esac
GOPROXY=https://proxy.golang.org go list -m "${MODULE}@${VER}" || true