Skip to content

Commit 76ca838

Browse files
committed
🚦 ci: add workflows
1 parent 108e4d1 commit 76ca838

File tree

4 files changed

+112
-0
lines changed

4 files changed

+112
-0
lines changed
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
name: Build and run
2+
3+
on:
4+
pull_request:
5+
6+
jobs:
7+
build:
8+
runs-on: ubuntu-latest
9+
steps:
10+
- name: Checkout
11+
uses: actions/checkout@v4
12+
- uses: oven-sh/setup-bun@v2
13+
- run: bun install --frozen-lockfile
14+
- run: bun run build
15+
- run: bun run check
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
name: Build and publish container image
2+
3+
on:
4+
push:
5+
branches:
6+
- 'master'
7+
tags:
8+
- '*'
9+
pull_request:
10+
branches:
11+
- 'master'
12+
13+
jobs:
14+
build:
15+
name: Build and publish container images
16+
runs-on: ubuntu-latest
17+
steps:
18+
- name: Checkout code
19+
uses: actions/checkout@v4
20+
21+
- name: Set up QEMU
22+
uses: docker/setup-qemu-action@v3
23+
24+
- name: Set up Docker Buildx
25+
uses: docker/setup-buildx-action@v3
26+
27+
- name: Log in to Docker Hub
28+
uses: docker/login-action@v3
29+
with:
30+
username: ${{ secrets.DOCKERHUB_USERNAME }}
31+
password: ${{ secrets.DOCKERHUB_TOKEN }}
32+
33+
- name: Login to GHCR
34+
uses: docker/login-action@v3
35+
with:
36+
registry: ghcr.io
37+
username: ${{ github.repository_owner }}
38+
password: ${{ secrets.GITHUB_TOKEN }}
39+
40+
- name: Extract metadata (tags, labels) for Docker
41+
id: meta
42+
uses: docker/metadata-action@v5
43+
with:
44+
images: |
45+
m1212e/oidc-push
46+
ghcr.io/${{ github.repository }}
47+
tags: |
48+
type=ref,event=branch
49+
type=ref,event=pr
50+
type=semver,pattern={{version}}
51+
type=semver,pattern={{major}}.{{minor}}
52+
53+
- name: Build and push Docker image
54+
uses: docker/build-push-action@v5
55+
with:
56+
push: true
57+
platforms: linux/amd64,linux/arm64
58+
tags: ${{ steps.meta.outputs.tags }}
59+
labels: ${{ steps.meta.outputs.labels }}
60+
build-args: |
61+
VERSION=${{ github.event.release.tag_name }}
62+
SHA=${{ github.sha }}

‎.github/workflows/lint.yml‎

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
name: Lint
2+
3+
on:
4+
pull_request:
5+
6+
jobs:
7+
lint:
8+
runs-on: ubuntu-latest
9+
steps:
10+
- name: Checkout
11+
uses: actions/checkout@v4
12+
- uses: oven-sh/setup-bun@v2
13+
- run: bun install
14+
- run: bun run lint
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: Ninja i18n action
2+
3+
on: pull_request_target
4+
5+
# explicitly configure permissions, in case your GITHUB_TOKEN workflow permissions are set to read-only in repository settings
6+
permissions:
7+
pull-requests: write # Necessary to comment on PRs
8+
issues: read # Necessary to read issue comments
9+
contents: read # Necessary to access the repo content
10+
11+
jobs:
12+
ninja-i18n:
13+
name: Ninja i18n - GitHub Lint Action
14+
runs-on: ubuntu-latest
15+
16+
steps:
17+
- name: Run Ninja i18n
18+
# @main ensures that the latest version of the action is used
19+
uses: opral/ninja-i18n-action@main
20+
env:
21+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)