From ef4b3dda5e1a7bda0ebdca6298193da857776901 Mon Sep 17 00:00:00 2001 From: Agarwal-Shivansh <117628143+Agarwal-Shivansh@users.noreply.github.com> Date: Sat, 11 May 2024 04:42:15 +0530 Subject: [PATCH] Githubactions (#396) --------- Co-authored-by: gab-arrobo --- .github/dependabot.yml | 90 ++++++++++++++++++++++++ .github/workflows/e2sm_kpm.yml | 39 ++++++++++ .github/workflows/e2sm_kpm_v2.yml | 39 ++++++++++ .github/workflows/e2sm_kpm_v2_go.yml | 39 ++++++++++ .github/workflows/e2sm_mho.yml | 40 +++++++++++ .github/workflows/e2sm_mho_go.yml | 39 ++++++++++ .github/workflows/e2sm_ni.yml | 40 +++++++++++ .github/workflows/e2sm_rc.yml | 40 +++++++++++ .github/workflows/e2sm_rc_pre.yml | 40 +++++++++++ .github/workflows/e2sm_rc_pre_go.yml | 39 ++++++++++ .github/workflows/e2sm_rsm.yml | 40 +++++++++++ .github/workflows/master.yml | 78 ++++++++++++++++++++ .github/workflows/protoc-gen-builder.yml | 27 +++++++ .github/workflows/protoc_gen_cgo.yml | 27 +++++++ .github/workflows/protoc_gen_choice.yml | 27 +++++++ 15 files changed, 644 insertions(+) create mode 100644 .github/dependabot.yml create mode 100644 .github/workflows/e2sm_kpm.yml create mode 100644 .github/workflows/e2sm_kpm_v2.yml create mode 100644 .github/workflows/e2sm_kpm_v2_go.yml create mode 100644 .github/workflows/e2sm_mho.yml create mode 100644 .github/workflows/e2sm_mho_go.yml create mode 100644 .github/workflows/e2sm_ni.yml create mode 100644 .github/workflows/e2sm_rc.yml create mode 100644 .github/workflows/e2sm_rc_pre.yml create mode 100644 .github/workflows/e2sm_rc_pre_go.yml create mode 100644 .github/workflows/e2sm_rsm.yml create mode 100644 .github/workflows/master.yml create mode 100644 .github/workflows/protoc-gen-builder.yml create mode 100644 .github/workflows/protoc_gen_cgo.yml create mode 100644 .github/workflows/protoc_gen_choice.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 00000000..4e5ee667 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,90 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation + +version: 2 +updates: + + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" + + - package-ecosystem: "docker" + directory: "/build/plugins/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/protoc-gen-builder/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/protoc-gen-cgo/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/protoc-gen-choice/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/e2sm_mho_go/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/e2sm_kpm_v2/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/e2sm_kpm_v2_go/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/e2sm_mho/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/e2sm_ni/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/e2sm_rc_pre/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/e2sm_rsm/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/e2sm_kpm/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/e2sm_rc_pre_go/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/e2sm_rc/" + schedule: + interval: "weekly" + + - package-ecosystem: "gomod" + directory: "/test_sm_aper_go_lib/" + schedule: + interval: "weekly" diff --git a/.github/workflows/e2sm_kpm.yml b/.github/workflows/e2sm_kpm.yml new file mode 100644 index 00000000..5985ca90 --- /dev/null +++ b/.github/workflows/e2sm_kpm.yml @@ -0,0 +1,39 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation + +name: e2sm_kpm +on: + push: + branches: + - master + pull_request: + +env: + E2T_MOD: github.com/onosproject/onos-e2t@master + ONOS_E2_SM_VERSION: latest + +jobs: + e2sm_kpm: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./servicemodels/e2sm_kpm + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: Build + run: go build -o build/_output/e2sm_kpm.so.1.0.0 -buildmode=plugin . + + - name: Unit tests + run: GODEBUG=cgocheck=0 go test -race ./... + + - name: docker-build + run: | + cd ../.. + ./build/bin/build-deps e2sm_kpm $E2T_MOD + docker build . -f build/plugins/Dockerfile \ + --build-arg PLUGIN_MAKE_TARGET="e2sm_kpm" \ + --build-arg PLUGIN_MAKE_VERSION="1.0.0" \ + -t onosproject/service-model-docker-e2sm_kpm-1.0.0:$ONOS_E2_SM_VERSION diff --git a/.github/workflows/e2sm_kpm_v2.yml b/.github/workflows/e2sm_kpm_v2.yml new file mode 100644 index 00000000..a6f1f2bf --- /dev/null +++ b/.github/workflows/e2sm_kpm_v2.yml @@ -0,0 +1,39 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation + +name: e2sm_kpm_v2 +on: + push: + branches: + - master + pull_request: + +env: + E2T_MOD: github.com/onosproject/onos-e2t@master + ONOS_E2_SM_VERSION: latest + +jobs: + e2sm_kpm_v2: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./servicemodels/e2sm_kpm_v2 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: Build + run: go build -o build/_output/e2sm_kpm_v2.so.1.0.0 -buildmode=plugin . + + - name: Unit tests + run: GODEBUG=cgocheck=0 go test -race ./... + + - name: docker-build + run: | + cd ../.. + ./build/bin/build-deps e2sm_kpm_v2 $E2T_MOD onosproject/service-model-docker-e2sm_kpm_v2-1.0.0:$ONOS_E2_SM_VERSION + docker build . -f build/plugins/Dockerfile \ + --build-arg PLUGIN_MAKE_TARGET="e2sm_kpm_v2" \ + --build-arg PLUGIN_MAKE_VERSION="1.0.0" \ + -t onosproject/service-model-docker-e2sm_kpm_v2-1.0.0:$ONOS_E2_SM_VERSION diff --git a/.github/workflows/e2sm_kpm_v2_go.yml b/.github/workflows/e2sm_kpm_v2_go.yml new file mode 100644 index 00000000..e6cb7788 --- /dev/null +++ b/.github/workflows/e2sm_kpm_v2_go.yml @@ -0,0 +1,39 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation + +name: e2sm_kpm_v2_go +on: + push: + branches: + - master + pull_request: + +env: + E2T_MOD: github.com/onosproject/onos-e2t@master + ONOS_E2_SM_VERSION: latest + +jobs: + e2sm_kpm_v2_go: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./servicemodels/e2sm_kpm_v2_go + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: Build + run: go build -o build/_output/e2sm_kpm_v2_go.so.1.0.0 -buildmode=plugin . + + - name: Unit tests + run: go test -race ./... + + - name: docker-build + run: | + cd ../.. + ./build/bin/build-deps e2sm_kpm_v2_go $E2T_MOD onosproject/service-model-docker-e2sm_kpm_v2_go-1.0.0:$ONOS_E2_SM_VERSION + docker build . -f build/plugins/Dockerfile \ + --build-arg PLUGIN_MAKE_TARGET="e2sm_kpm_v2_go" \ + --build-arg PLUGIN_MAKE_VERSION="1.0.0" \ + -t onosproject/service-model-docker-e2sm_kpm_v2_go-1.0.0:$ONOS_E2_SM_VERSION diff --git a/.github/workflows/e2sm_mho.yml b/.github/workflows/e2sm_mho.yml new file mode 100644 index 00000000..1dba0dfe --- /dev/null +++ b/.github/workflows/e2sm_mho.yml @@ -0,0 +1,40 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation + +name: e2sm_mho +on: + push: + branches: + - master + pull_request: + +env: + E2T_MOD: github.com/onosproject/onos-e2t@master + ONOS_E2_SM_VERSION: latest + +jobs: + e2sm_mho: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./servicemodels/e2sm_mho + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: Build + run: go build -o build/_output/e2sm_mho.so.1.0.0 -buildmode=plugin . + + - name: Unit tests + run: GODEBUG=cgocheck=0 go test -race ./... + + - name: docker-build + run: | + cd ../.. + ./build/bin/build-deps e2sm_mho $E2T_MOD + docker build . -f build/plugins/Dockerfile \ + --build-arg PLUGIN_MAKE_TARGET="e2sm_mho" \ + --build-arg PLUGIN_MAKE_VERSION="1.0.0" \ + -t onosproject/service-model-docker-e2sm_mho-1.0.0:$ONOS_E2_SM_VERSION + diff --git a/.github/workflows/e2sm_mho_go.yml b/.github/workflows/e2sm_mho_go.yml new file mode 100644 index 00000000..73e03cfa --- /dev/null +++ b/.github/workflows/e2sm_mho_go.yml @@ -0,0 +1,39 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation + +name: e2sm_mho_go +on: + push: + branches: + - master + pull_request: + +env: + E2T_MOD: github.com/onosproject/onos-e2t@master + ONOS_E2_SM_VERSION: latest + +jobs: + e2sm_mho_go: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./servicemodels/e2sm_mho_go + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: Build + run: go build -o build/_output/e2sm_mho_go.so.1.0.0 -buildmode=plugin . + + - name: Unit tests + run: go test -race ./... + + - name: docker-build + run: | + cd ../.. + ./build/bin/build-deps e2sm_mho_go $E2T_MOD onosproject/service-model-docker-e2sm_mho_go-1.0.0:$ONOS_E2_SM_VERSION + docker build . -f build/plugins/Dockerfile \ + --build-arg PLUGIN_MAKE_TARGET="e2sm_mho_go" \ + --build-arg PLUGIN_MAKE_VERSION="1.0.0" \ + -t onosproject/service-model-docker-e2sm_mho_go-1.0.0:$ONOS_E2_SM_VERSION diff --git a/.github/workflows/e2sm_ni.yml b/.github/workflows/e2sm_ni.yml new file mode 100644 index 00000000..7865d0d6 --- /dev/null +++ b/.github/workflows/e2sm_ni.yml @@ -0,0 +1,40 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation + +name: e2sm_ni +on: + push: + branches: + - master + pull_request: + +env: + E2T_MOD: github.com/onosproject/onos-e2t@master + ONOS_E2_SM_VERSION: latest + +jobs: + e2sm_ni: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./servicemodels/e2sm_ni + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: Build + run: go build -o build/_output/e2sm_ni.so.1.0.0 -buildmode=plugin . + + - name: Unit tests + run: go test -race ./... + + - name: docker-build + run: | + cd ../.. + ./build/bin/build-deps e2sm_ni $E2T_MOD + docker build . -f build/plugins/Dockerfile \ + --build-arg PLUGIN_MAKE_TARGET="e2sm_ni" \ + --build-arg PLUGIN_MAKE_VERSION="1.0.0" \ + -t onosproject/service-model-docker-e2sm_ni-1.0.0:$ONOS_E2_SM_VERSION + diff --git a/.github/workflows/e2sm_rc.yml b/.github/workflows/e2sm_rc.yml new file mode 100644 index 00000000..abbedf74 --- /dev/null +++ b/.github/workflows/e2sm_rc.yml @@ -0,0 +1,40 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation + +name: e2sm_rc +on: + push: + branches: + - master + pull_request: + +env: + E2T_MOD: github.com/onosproject/onos-e2t@master + ONOS_E2_SM_VERSION: latest + +jobs: + e2sm_rc: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./servicemodels/e2sm_rc + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: Build + run: go build -o build/_output/e2sm_rc.so.1.0.0 -buildmode=plugin . + + - name: Unit tests + run: go test -race ./... + + - name: docker-build + run: | + cd ../.. + ./build/bin/build-deps e2sm_rc $E2T_MOD onosproject/service-model-docker-e2sm_rc-1.0.0:$ONOS_E2_SM_VERSION + docker build . -f build/plugins/Dockerfile \ + --build-arg PLUGIN_MAKE_TARGET="e2sm_rc" \ + --build-arg PLUGIN_MAKE_VERSION="1.0.0" \ + -t onosproject/service-model-docker-e2sm_rc-1.0.0:$ONOS_E2_SM_VERSION + diff --git a/.github/workflows/e2sm_rc_pre.yml b/.github/workflows/e2sm_rc_pre.yml new file mode 100644 index 00000000..c94bd553 --- /dev/null +++ b/.github/workflows/e2sm_rc_pre.yml @@ -0,0 +1,40 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation + +name: e2sm_rc_pre +on: + push: + branches: + - master + pull_request: + +env: + E2T_MOD: github.com/onosproject/onos-e2t@master + ONOS_E2_SM_VERSION: latest + +jobs: + e2sm_rc_pre: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./servicemodels/e2sm_rc_pre + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: Build + run: go build -o build/_output/e2sm_rc_pre.so.1.0.0 -buildmode=plugin . + + - name: Unit tests + run: GODEBUG=cgocheck=0 go test -race ./... + + - name: docker-build + run: | + cd ../.. + ./build/bin/build-deps e2sm_rc_pre $E2T_MOD + docker build . -f build/plugins/Dockerfile \ + --build-arg PLUGIN_MAKE_TARGET="e2sm_rc_pre" \ + --build-arg PLUGIN_MAKE_VERSION="1.0.0" \ + -t onosproject/service-model-docker-e2sm_rc_pre-1.0.0:$ONOS_E2_SM_VERSION + diff --git a/.github/workflows/e2sm_rc_pre_go.yml b/.github/workflows/e2sm_rc_pre_go.yml new file mode 100644 index 00000000..bd60c80c --- /dev/null +++ b/.github/workflows/e2sm_rc_pre_go.yml @@ -0,0 +1,39 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation + +name: e2sm_rc_pre_go +on: + push: + branches: + - master + pull_request: + +env: + E2T_MOD: github.com/onosproject/onos-e2t@master + ONOS_E2_SM_VERSION: latest + +jobs: + e2sm_rc_pre_go: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./servicemodels/e2sm_rc_pre_go + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: Build + run: go build -o build/_output/e2sm_rc_pre_go.so.1.0.0 -buildmode=plugin . + + - name: Unit tests + run: go test -race ./... + + - name: docker-build + run: | + cd ../.. + ./build/bin/build-deps e2sm_rc_pre_go $E2T_MOD + docker build . -f build/plugins/Dockerfile \ + --build-arg PLUGIN_MAKE_TARGET="e2sm_rc_pre_go" \ + --build-arg PLUGIN_MAKE_VERSION="1.0.0" \ + -t onosproject/service-model-docker-e2sm_rc_pre_go-1.0.0:$ONOS_E2_SM_VERSION diff --git a/.github/workflows/e2sm_rsm.yml b/.github/workflows/e2sm_rsm.yml new file mode 100644 index 00000000..7d7346be --- /dev/null +++ b/.github/workflows/e2sm_rsm.yml @@ -0,0 +1,40 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation + +name: e2sm_rsm +on: + push: + branches: + - master + pull_request: + +env: + E2T_MOD: github.com/onosproject/onos-e2t@master + ONOS_E2_SM_VERSION: latest + +jobs: + e2sm_rsm: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./servicemodels/e2sm_rsm + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: Build + run: go build -o build/_output/e2sm_rsm.so.1.0.0 -buildmode=plugin . + + - name: Unit tests + run: go test -race ./... + + - name: docker-build + run: | + cd ../.. + ./build/bin/build-deps e2sm_rsm $E2T_MOD onosproject/service-model-docker-e2sm_rsm-1.0.0:$ONOS_E2_SM_VERSION + docker build . -f build/plugins/Dockerfile \ + --build-arg PLUGIN_MAKE_TARGET="e2sm_rsm" \ + --build-arg PLUGIN_MAKE_VERSION="1.0.0" \ + -t onosproject/service-model-docker-e2sm_rsm-1.0.0:$ONOS_E2_SM_VERSION + diff --git a/.github/workflows/master.yml b/.github/workflows/master.yml new file mode 100644 index 00000000..2199a94c --- /dev/null +++ b/.github/workflows/master.yml @@ -0,0 +1,78 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation +name: Master +on: + push: + branches: + - master + pull_request: + +env: + ONOS_PROTOC_VERSION: v1.0.2 + BUF_VERSION: 1.0.0 + +jobs: + protos: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - run: | + cd .. + sudo git clone https://github.com/onosproject/onos-lib-go.git + cd onos-e2-sm + docker run \ + -v `pwd`:/go/src/github.com/onosproject/onos-e2-sm \ + -v `pwd`/../onos-lib-go:/go/src/github.com/onosproject/onos-lib-go \ + -w /go/src/github.com/onosproject/onos-e2-sm \ + --entrypoint /go/src/github.com/onosproject/onos-e2-sm/build/bin/compile-protos.sh \ + onosproject/protoc-go:$ONOS_PROTOC_VERSION + + protos-py: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - run: | + docker run \ + -v `pwd`:/go/src/github.com/onosproject/onos-e2-sm \ + -v `pwd`/../onos-lib-go:/go/src/github.com/onosproject/onos-lib-go \ + -w /go/src/github.com/onosproject/onos-e2-sm \ + --entrypoint /go/src/github.com/onosproject/onos-e2-sm/build/bin/compile-protos-py.sh \ + onosproject/protoc-go:$ONOS_PROTOC_VERSION + + buflint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - run: | + docker run \ + -v `pwd`:/go/src/github.com/onosproject/onos-e2-sm \ + -v `pwd`/../onos-lib-go/api/asn1:/go/src/github.com/onosproject/onos-e2-sm/servicemodels/asn1 \ + -w /go/src/github.com/onosproject/onos-e2-sm/servicemodels \ + bufbuild/buf:$BUF_VERSION lint + + lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - uses: golangci/golangci-lint-action@v4.0.0 + with: + version: latest + args: -v --config ./.golangci.yml --timeout=15m + + reuse: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: fsfe/reuse-action@v3 + + fossa: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: FOSSA scan + uses: fossa-contrib/fossa-action@v3 + with: + fossa-api-key: 6d304c09a3ec097ba4517724e4a4d17d diff --git a/.github/workflows/protoc-gen-builder.yml b/.github/workflows/protoc-gen-builder.yml new file mode 100644 index 00000000..f285526e --- /dev/null +++ b/.github/workflows/protoc-gen-builder.yml @@ -0,0 +1,27 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation + +name: protoc_gen_builder +on: + push: + branches: + - master + pull_request: + +jobs: + protoc_gen_builder: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./protoc-gen-builder + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: Build + run: go build -v -o ./protoc-gen-builder + + - name: Unit tests + run: go test -race ./... + diff --git a/.github/workflows/protoc_gen_cgo.yml b/.github/workflows/protoc_gen_cgo.yml new file mode 100644 index 00000000..e81b5976 --- /dev/null +++ b/.github/workflows/protoc_gen_cgo.yml @@ -0,0 +1,27 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation + +name: protoc_gen_cgo +on: + push: + branches: + - master + pull_request: + +jobs: + protoc_gen_cgo: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./protoc-gen-cgo + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: Build + run: go build -v -o ./protoc-gen-cgo + + - name: Unit tests + run: go test -race ./... + diff --git a/.github/workflows/protoc_gen_choice.yml b/.github/workflows/protoc_gen_choice.yml new file mode 100644 index 00000000..ca3afdd1 --- /dev/null +++ b/.github/workflows/protoc_gen_choice.yml @@ -0,0 +1,27 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2024 Intel Corporation + +name: protoc_gen_choice +on: + push: + branches: + - master + pull_request: + +jobs: + protoc_gen_choice: + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./protoc-gen-choice + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: Build + run: go build -v -o ./protoc-gen-choice + + - name: Unit tests + run: go test -race ./... +