jx/.gitea/workflows/test.yaml

125 lines
4.0 KiB
YAML
Raw Normal View History

2024-03-21 21:55:00 +00:00
name: Declarative Tests
run-name: ${{ gitea.actor }} testing
2024-03-22 17:57:10 +00:00
on:
- push
- workflow_dispatch
- issue_comment
2024-03-21 21:55:00 +00:00
jobs:
2024-03-22 17:57:10 +00:00
test:
2024-03-21 21:55:00 +00:00
runs-on: ubuntu-latest
container:
2024-05-24 05:33:24 +00:00
image: registry.cv.mazarbul.net/declarative/build-golang:1.22.1-alpine-x86_64
2024-03-21 21:55:00 +00:00
env:
GOPATH: /
SSH_AUTH_SOCK: /tmp/ssh.sock
ENVIRONMENT: dev
volumes:
2024-05-24 22:12:10 +00:00
- "/etc/timezone:/etc/timezone:ro"
- "/etc/localtime:/etc/localtime:ro"
2024-05-25 02:48:40 +00:00
- "/etc/gitconfig:/etc/gitconfig:ro"
2024-05-25 23:41:43 +00:00
- "/opt/gitea/act_runner/.ssh/known_hosts:/root/.ssh/known_hosts"
- "/opt/gitea/act_runner/.gitconfig:/root/.gitconfig:ro"
- "/opt/gitea/act_runner/.git-credentials:/root/.git-credentials:ro"
2024-05-24 21:45:37 +00:00
- "/etc/ssl/certs:/etc/ssl/certs:ro"
2024-05-26 00:13:08 +00:00
options: --cpus 10
2024-03-21 21:55:00 +00:00
steps:
2024-03-22 18:55:50 +00:00
- run: apk add --no-cache nodejs
- name: Check out repository code
uses: actions/checkout@v3
- run: echo "The ${{ gitea.repository }} repository has been cloned to the runner."
2024-03-21 21:55:00 +00:00
- run: echo "The workflow is now ready to test your code on the runner."
- name: Run tests
run: |
2024-03-23 20:03:42 +00:00
go test -coverprofile=artifacts/coverage.profile ./...
2024-04-03 22:53:10 +00:00
- name: Run build
run: |
make build
- name: cli tests
run: |
go test
- run: echo "This job's status is ${{ job.status }}."
2024-03-23 20:43:24 +00:00
- run: echo "This job's status is ${{ job.status }}."
2024-03-23 20:11:53 +00:00
- name: coverage report
run: |
2024-03-24 00:19:13 +00:00
go tool cover -html=artifacts/coverage.profile -o artifacts/code-coverage.html
- name: Archive code coverage results
2024-03-24 00:54:55 +00:00
uses: actions/upload-artifact@v3
2024-03-24 00:19:13 +00:00
with:
name: code-coverage-report
path: artifacts/code-coverage.html
2024-04-03 22:53:10 +00:00
- name: Archive binary
uses: actions/upload-artifact@v3
with:
2024-05-26 00:56:20 +00:00
name: jx
path: jx
2024-03-21 21:55:00 +00:00
- run: echo "This job's status is ${{ job.status }}."
2024-05-26 21:13:18 +00:00
build:
runs-on: ubuntu-latest
container:
image: fedora:latest
env:
GOPATH: /
SSH_AUTH_SOCK: /tmp/ssh.sock
ENVIRONMENT: dev
volumes:
- "/etc/timezone:/etc/timezone:ro"
- "/etc/localtime:/etc/localtime:ro"
- "/etc/gitconfig:/etc/gitconfig:ro"
- "/opt/gitea/act_runner/.ssh/known_hosts:/root/.ssh/known_hosts"
- "/opt/gitea/act_runner/.gitconfig:/root/.gitconfig:ro"
- "/opt/gitea/act_runner/.git-credentials:/root/.git-credentials:ro"
- "/etc/ssl/certs:/etc/ssl/certs:ro"
2024-05-28 23:13:15 +00:00
options: --cpus 4
2024-05-26 21:13:18 +00:00
steps:
2024-05-29 01:15:49 +00:00
- run: dnf install -y nodejs git make
2024-05-26 21:13:18 +00:00
- name: Check out repository code
uses: actions/checkout@v3
2024-05-27 00:32:11 +00:00
with:
fetch-depth: 0
2024-05-26 22:57:23 +00:00
- run: dnf install -y dnf-plugins-core rpm-build rpmdevtools
2024-05-26 22:17:40 +00:00
- run: dnf builddep -y build/jx.spec
2024-05-26 21:13:18 +00:00
- name: Run build
run: |
make rpm
- name: Archive binary
uses: actions/upload-artifact@v3
with:
2024-05-29 01:15:49 +00:00
name: fedora/40/jx
2024-05-26 21:13:18 +00:00
path: jx
- uses: actions/upload-artifact@v3
with:
path: "/root/rpmbuild/**/*.rpm"
- run: echo "This job's status is ${{ job.status }}."
2024-05-28 19:44:44 +00:00
build-focal:
runs-on: ubuntu-latest
permissions:
contents: write
container:
image: ubuntu:focal
env:
GOPATH: /
SSH_AUTH_SOCK: /tmp/ssh.sock
ENVIRONMENT: dev
2024-05-28 23:13:15 +00:00
DEBIAN_FRONTEND: noninteractive
2024-05-29 00:20:56 +00:00
TZ: America/Los_Angeles
2024-05-28 19:44:44 +00:00
volumes:
- "/etc/gitconfig:/etc/gitconfig:ro"
- "/opt/gitea/act_runner/.ssh/known_hosts:/root/.ssh/known_hosts"
- "/opt/gitea/act_runner/.gitconfig:/root/.gitconfig:ro"
- "/opt/gitea/act_runner/.git-credentials:/root/.git-credentials:ro"
2024-05-28 23:13:15 +00:00
options: --cpus 4
2024-05-28 19:44:44 +00:00
steps:
2024-05-29 02:56:21 +00:00
- run: apt-get -y update && apt-get install -y tzdata
- run: apt-get install -y nodejs git make
- uses: actions/checkout@v3
with:
fetch-depth: 0
- run: make ubuntu-deps
- run: make build
- run: make deb
- uses: actions/upload-artifact@v3
with:
name: "ubuntu/focal/jx"
path: "jx"