Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
128 commits
Select commit Hold shift + click to select a range
504a3b8
refactor: rework file structure (#325)
steveiliop56 Aug 26, 2025
87ca77d
chore(deps): bump github.com/go-viper/mapstructure/v2 (#322)
dependabot[bot] Aug 26, 2025
03d06cb
feat: add sqlite database for storing sessions (#326)
steveiliop56 Aug 29, 2025
c7c3de4
refactor: unify labels (#329)
steveiliop56 Aug 29, 2025
55e60a6
chore(deps): bump oven/bun from 1.2.20-alpine to 1.2.21-alpine (#327)
dependabot[bot] Aug 30, 2025
17048d9
chore(deps): bump the minor-patch group across 1 directory with 18 up…
dependabot[bot] Aug 30, 2025
b9e3571
feat: invalid domain warning (#332)
steveiliop56 Sep 1, 2025
5184c96
feat: add mutex to ldap service
steveiliop56 Sep 1, 2025
ad4fc7e
refactor: don't export non-needed fields (#336)
steveiliop56 Sep 1, 2025
9ce16c9
fix: expire csrf cookie if it's invalid
steveiliop56 Sep 2, 2025
f0d2da2
feat: header based acls (#337)
steveiliop56 Sep 2, 2025
f3eb7f6
Revert "feat: header based acls (#337)" (#340)
steveiliop56 Sep 3, 2025
773cd6d
feat: add trusted proxies config value
steveiliop56 Sep 3, 2025
b024d5f
feat: allow for dash substitute in ip filters for environments like k…
steveiliop56 Sep 3, 2025
f5ac7ef
refactor: mode label decoder to separate package
steveiliop56 Sep 3, 2025
7afea8b
tests: add tests for context controller
steveiliop56 Sep 3, 2025
9b7dcfd
tests: add user controller tests
steveiliop56 Sep 3, 2025
53856e0
tests: test invalid json in user controller
steveiliop56 Sep 3, 2025
f8836fc
tests: test user context handler with no context
steveiliop56 Sep 3, 2025
bb03737
tests: add resources controller test
steveiliop56 Sep 3, 2025
ba46493
tests: add proxy controller tests
steveiliop56 Sep 3, 2025
74cb806
tests: add util tests
steveiliop56 Sep 3, 2025
e03eaf4
feat: add psl check in cookie domain
steveiliop56 Sep 10, 2025
2d78e6b
feat: add cookie domain back to context controller
steveiliop56 Sep 10, 2025
5c866ba
feat: multiple oauth providers (#355)
steveiliop56 Sep 16, 2025
039bdb4
chore(deps): bump the minor-patch group across 1 directory with 6 upd…
dependabot[bot] Sep 16, 2025
9a306f5
chore(deps): bump oven/bun from 1.2.21-alpine to 1.2.22-alpine (#358)
dependabot[bot] Sep 16, 2025
363f0f9
chore(deps): bump the minor-patch group in /frontend with 21 updates …
dependabot[bot] Sep 16, 2025
b62b293
fix: only set trusted proxies if config option is not empty
steveiliop56 Sep 16, 2025
b2dcffd
chore(deps): bump gorm.io/gorm in the minor-patch group (#360)
dependabot[bot] Sep 18, 2025
5193790
chore(deps): bump the minor-patch group across 1 directory with 7 upd…
dependabot[bot] Sep 18, 2025
50105e4
feat: version info analytics (#363)
steveiliop56 Sep 19, 2025
d70cbea
chore: handle trusted proxies config error
steveiliop56 Sep 19, 2025
866933b
fix: fix version handling in docker and cd
steveiliop56 Sep 19, 2025
c9867cc
chore: fix typo
steveiliop56 Sep 20, 2025
e114bf0
Update verify.go (#364)
Alpha-404 Sep 21, 2025
f8047a6
feat: add option to disable resources server
steveiliop56 Sep 22, 2025
e8558b8
fix: set gin mode correctly
steveiliop56 Sep 22, 2025
5dd8526
fix: fix key normalization function handing more cases than it needs to
steveiliop56 Sep 22, 2025
c307f7e
fix: handle 201 status for heartbeat
steveiliop56 Sep 22, 2025
085f625
fix: fix oauth group provider check
steveiliop56 Sep 25, 2025
a54996d
chore(deps): bump oven/bun from 1.2.22-alpine to 1.2.23-alpine (#373)
dependabot[bot] Oct 3, 2025
d406990
feat: autofocus totp form
steveiliop56 Oct 3, 2025
dad0718
fix: disable search engine indexing
steveiliop56 Oct 5, 2025
2f1cb8d
refactor: disable indexing completely in frontend
steveiliop56 Oct 5, 2025
3ed180c
chore(deps): bump the minor-patch group across 1 directory with 21 up…
dependabot[bot] Oct 5, 2025
121c629
chore(deps): bump the minor-patch group across 1 directory with 3 upd…
dependabot[bot] Oct 5, 2025
30fe695
New Crowdin updates (#278)
steveiliop56 Oct 5, 2025
2f8fa39
refactor: make cli modular (#390)
steveiliop56 Oct 6, 2025
f0a48cc
feat: add health check command
steveiliop56 Oct 6, 2025
a629430
chore: update readme
steveiliop56 Oct 6, 2025
720f387
refactor: rework cli healthcheck logic
steveiliop56 Oct 7, 2025
1ee0cee
feat: distroless image
steveiliop56 Oct 7, 2025
adb1a9b
fix: fix typo
steveiliop56 Oct 7, 2025
2cc6b6b
fix: tinyauth path in dockerfiles
steveiliop56 Oct 7, 2025
1032858
feat: add distroless to release workflow
steveiliop56 Oct 7, 2025
bbf8112
refactor: touch up loggin in healthcheck command
steveiliop56 Oct 7, 2025
c337ba5
chore(deps): bump github.com/go-playground/validator/v10 (#387)
dependabot[bot] Oct 7, 2025
9ba1695
chore(deps-dev): bump eslint-plugin-react-hooks in /frontend (#388)
dependabot[bot] Oct 7, 2025
4a530ee
chore(deps): bump react-i18next from 15.7.3 to 16.0.0 in /frontend (#…
dependabot[bot] Oct 7, 2025
cbe31d4
chore(deps): bump the minor-patch group across 1 directory with 10 up…
dependabot[bot] Oct 7, 2025
adffb4a
fix: names in oauth broker
steveiliop56 Oct 8, 2025
c5d70d7
feat: set page title based on configured title
steveiliop56 Oct 8, 2025
0255e95
refactor: use non-google specific meta tags
steveiliop56 Oct 8, 2025
287c6f9
fix: do not allow request if docker labels check fail
steveiliop56 Oct 8, 2025
c77da30
refactor: set gin mode using env
steveiliop56 Oct 8, 2025
e5f1df0
feat: add tinyauth to container path
steveiliop56 Oct 8, 2025
e878516
refactor: don't add tinyauth suffix to title
steveiliop56 Oct 8, 2025
5b7bda3
chore: use bun frozen lockfile for builds
steveiliop56 Oct 8, 2025
76f2014
feat: add http cache for static files (#395)
CzBiX Oct 8, 2025
ae8347f
fix: use docker meta flavors for handling latest, prefix and suffix
steveiliop56 Oct 8, 2025
05d4dbd
fix: ensure data directory exists on docker image
steveiliop56 Oct 10, 2025
5a4855c
refactor: move docker connection check to start up
steveiliop56 Oct 10, 2025
4047cea
docs: regenerate readme sponsors list (#402)
github-actions[bot] Oct 10, 2025
a1ec4a6
fix: remove spaces before checking oauth name and username
steveiliop56 Oct 10, 2025
b940d68
feat: use recovery gin middleware in engine
steveiliop56 Oct 10, 2025
fc7e395
feat: sort configured providers based on name length
steveiliop56 Oct 10, 2025
ed20d2c
fix: use correct path for data directory in distroless
steveiliop56 Oct 11, 2025
9b76a84
feat: add trace logging
steveiliop56 Oct 11, 2025
dc67be2
fix: remove html suffix from docs link
steveiliop56 Oct 11, 2025
1b87ed9
feat: add config dumps to trace log level
steveiliop56 Oct 11, 2025
64222b6
fix: don't use container name in label discovery
steveiliop56 Oct 12, 2025
0996711
chore(deps): bump the minor-patch group with 3 updates (#396)
dependabot[bot] Oct 12, 2025
8ee331a
chore(deps-dev): bump eslint-plugin-react-hooks in /frontend (#398)
dependabot[bot] Oct 12, 2025
81136ee
chore(deps): bump the minor-patch group across 1 directory with 2 upd…
dependabot[bot] Oct 12, 2025
a9c1bf8
chore(deps): bump github.com/quic-go/quic-go from 0.54.0 to 0.54.1 (#…
dependabot[bot] Oct 12, 2025
f628d1f
fix(redirect): allow root cookie domain host redirects (#409)
scottmckendry Oct 13, 2025
473109b
chore(deps): bump oven/bun from 1.2.23-alpine to 1.3.0-alpine (#410)
dependabot[bot] Oct 13, 2025
2ea921f
chore(deps): bump the minor-patch group in /frontend with 3 updates (…
dependabot[bot] Oct 13, 2025
57b7b66
fix: let docker meta decide if the version is latest or not
steveiliop56 Oct 14, 2025
8235059
chore(deps): bump github.com/charmbracelet/huh in the minor-patch gro…
dependabot[bot] Oct 15, 2025
97639ae
chore(deps): bump the minor-patch group across 1 directory with 5 upd…
dependabot[bot] Oct 15, 2025
5482430
refactor: generate a verifier on every oauth auth session
steveiliop56 Oct 19, 2025
7231efc
feat: add routine to cleanup expired sessions
steveiliop56 Oct 19, 2025
6647c6c
refactor: use gorm generics api for database actions
steveiliop56 Oct 19, 2025
c5bb389
feat: ACL labels from environment variables (#422)
chrellrich Oct 21, 2025
0227af6
refactor: rework decoders logic for cleaner code (#431)
steveiliop56 Oct 26, 2025
330c7aa
feat: add support for light mode (#438)
steveiliop56 Oct 31, 2025
5f7e89c
feat: enable eslint in ci
steveiliop56 Oct 31, 2025
20fb635
fix: build frontend in ci
steveiliop56 Nov 3, 2025
e23f4f1
chore: disable env acls
steveiliop56 Nov 4, 2025
57aca58
fix: ensure providers prefix exists on env variables and flags
steveiliop56 Nov 4, 2025
bb1ecd4
fix: allow for all subdomains to be considered safe for redirection
steveiliop56 Nov 4, 2025
7376e6d
chore(deps): bump gorm.io/gorm in the minor-patch group (#441)
dependabot[bot] Nov 4, 2025
3b66491
chore(deps): bump the minor-patch group across 1 directory with 18 up…
dependabot[bot] Nov 4, 2025
6ac9f6e
chore(deps): bump oven/bun from 1.3.0-alpine to 1.3.1-alpine (#425)
dependabot[bot] Nov 4, 2025
60dada8
feat: add support for listening on unix sockets
steveiliop56 Nov 4, 2025
32539b0
New translations en.json (Finnish) (#418)
steveiliop56 Nov 4, 2025
2af036b
feat: add logging for session creation
steveiliop56 Nov 6, 2025
8453c48
feat: add log in json option
steveiliop56 Nov 6, 2025
74b9339
docs: regenerate readme sponsors list (#454)
github-actions[bot] Nov 10, 2025
8711c61
chore(deps): bump oven/bun from 1.3.1-alpine to 1.3.2-alpine (#451)
dependabot[bot] Nov 10, 2025
396c86a
chore(deps): bump the minor-patch group across 1 directory with 11 up…
dependabot[bot] Nov 10, 2025
cf56bbc
chore(deps): bump the minor-patch group across 1 directory with 2 upd…
dependabot[bot] Nov 10, 2025
f36032c
chore(deps): bump the minor-patch group across 1 directory with 8 upd…
dependabot[bot] Nov 13, 2025
d4d4cb3
chore(deps): bump golang.org/x/crypto in the minor-patch group (#456)
dependabot[bot] Nov 13, 2025
f4411af
refactor: do not install delve on every rebuild
steveiliop56 Nov 15, 2025
6d663bb
fix: use unix seconds in db cleanup
steveiliop56 Nov 15, 2025
e0a8cf5
fix: set correct bin location in air
steveiliop56 Nov 16, 2025
9d21d6a
fix: use lowercase portuguese code tags
steveiliop56 Nov 21, 2025
e79d1a8
New Crowdin updates (#450)
steveiliop56 Nov 21, 2025
1b97214
chore(deps): bump golang.org/x/crypto from 0.44.0 to 0.45.0 (#469)
dependabot[bot] Nov 21, 2025
5c19d1c
chore(deps): bump the minor-patch group across 1 directory with 9 upd…
dependabot[bot] Nov 21, 2025
22a2ab3
chore(deps): bump github.com/weppos/publicsuffix-go (#473)
dependabot[bot] Nov 21, 2025
6c90046
feat: add option to disable ui warnings
steveiliop56 Nov 21, 2025
641b9aa
feat: log unsafe redirect uri in oauth controller
steveiliop56 Nov 23, 2025
8a3f208
New translations en.json (Portuguese, Brazilian) (#474)
steveiliop56 Nov 23, 2025
1a2e1a0
Merge remote-tracking branch 'upstream/main'
maposia Dec 2, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 8 additions & 19 deletions .env.example
Original file line number Diff line number Diff line change
@@ -1,33 +1,22 @@
PORT=3000
ADDRESS=0.0.0.0
SECRET=app_secret
SECRET_FILE=app_secret_file
APP_URL=http://localhost:3000
USERS=your_user_password_hash
USERS_FILE=users_file
COOKIE_SECURE=false
GITHUB_CLIENT_ID=github_client_id
GITHUB_CLIENT_SECRET=github_client_secret
GITHUB_CLIENT_SECRET_FILE=github_client_secret_file
GOOGLE_CLIENT_ID=google_client_id
GOOGLE_CLIENT_SECRET=google_client_secret
GOOGLE_CLIENT_SECRET_FILE=google_client_secret_file
GENERIC_CLIENT_ID=generic_client_id
GENERIC_CLIENT_SECRET=generic_client_secret
GENERIC_CLIENT_SECRET_FILE=generic_client_secret_file
GENERIC_SCOPES=generic_scopes
GENERIC_AUTH_URL=generic_auth_url
GENERIC_TOKEN_URL=generic_token_url
GENERIC_USER_URL=generic_user_url
DISABLE_CONTINUE=false
SECURE_COOKIE=false
OAUTH_WHITELIST=
GENERIC_NAME=My OAuth
SESSION_EXPIRY=7200
LOGIN_TIMEOUT=300
LOGIN_MAX_RETRIES=5
LOG_LEVEL=0
LOG_LEVEL=debug
APP_TITLE=Tinyauth SSO
FORGOT_PASSWORD_MESSAGE=Some message about resetting the password
OAUTH_AUTO_REDIRECT=none
BACKGROUND_IMAGE=some_image_url
GENERIC_SKIP_SSL=false
GENERIC_SKIP_SSL=false
RESOURCES_DIR=/data/resources
DATABASE_PATH=/data/tinyauth.db
DISABLE_ANALYTICS=false
DISABLE_RESOURCES=false
TRUSTED_PROXIES=
7 changes: 6 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,17 @@ jobs:
- name: Install frontend dependencies
run: |
cd frontend
bun install
bun install --frozen-lockfile

- name: Set version
run: |
echo testing > internal/assets/version

- name: Lint frontend
run: |
cd frontend
bun run lint

- name: Build frontend
run: |
cd frontend
Expand Down
175 changes: 168 additions & 7 deletions .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ jobs:
- name: Install frontend dependencies
run: |
cd frontend
bun install
bun install --frozen-lockfile

- name: Install backend dependencies
run: |
Expand All @@ -80,7 +80,7 @@ jobs:
- name: Build
run: |
cp -r frontend/dist internal/assets/dist
go build -ldflags "-s -w -X tinyauth/internal/constants.Version=${{ needs.generate-metadata.outputs.VERSION }} -X tinyauth/internal/constants.CommitHash=${{ needs.generate-metadata.outputs.COMMIT_HASH }} -X tinyauth/internal/constants.BuildTimestamp=${{ needs.generate-metadata.outputs.BUILD_TIMESTAMP }}" -o tinyauth-amd64
go build -ldflags "-s -w -X tinyauth/internal/config.Version=${{ needs.generate-metadata.outputs.VERSION }} -X tinyauth/internal/config.CommitHash=${{ needs.generate-metadata.outputs.COMMIT_HASH }} -X tinyauth/internal/config.BuildTimestamp=${{ needs.generate-metadata.outputs.BUILD_TIMESTAMP }}" -o tinyauth-amd64
env:
CGO_ENABLED: 0

Expand Down Expand Up @@ -112,7 +112,7 @@ jobs:
- name: Install frontend dependencies
run: |
cd frontend
bun install
bun install --frozen-lockfile

- name: Install backend dependencies
run: |
Expand All @@ -126,7 +126,7 @@ jobs:
- name: Build
run: |
cp -r frontend/dist internal/assets/dist
go build -ldflags "-s -w -X tinyauth/internal/constants.Version=${{ needs.generate-metadata.outputs.VERSION }} -X tinyauth/internal/constants.CommitHash=${{ needs.generate-metadata.outputs.COMMIT_HASH }} -X tinyauth/internal/constants.BuildTimestamp=${{ needs.generate-metadata.outputs.BUILD_TIMESTAMP }}" -o tinyauth-arm64
go build -ldflags "-s -w -X tinyauth/internal/config.Version=${{ needs.generate-metadata.outputs.VERSION }} -X tinyauth/internal/config.CommitHash=${{ needs.generate-metadata.outputs.COMMIT_HASH }} -X tinyauth/internal/config.BuildTimestamp=${{ needs.generate-metadata.outputs.BUILD_TIMESTAMP }}" -o tinyauth-arm64
env:
CGO_ENABLED: 0

Expand Down Expand Up @@ -171,6 +171,9 @@ jobs:
labels: ${{ steps.meta.outputs.labels }}
tags: ghcr.io/${{ github.repository_owner }}/tinyauth
outputs: type=image,push-by-digest=true,name-canonical=true,push=true
cache-from: type=gha
cache-to: type=gha,mode=max
github-token: ${{ secrets.GITHUB_TOKEN }}
build-args: |
VERSION=${{ needs.generate-metadata.outputs.VERSION }}
COMMIT_HASH=${{ needs.generate-metadata.outputs.COMMIT_HASH }}
Expand All @@ -190,6 +193,65 @@ jobs:
if-no-files-found: error
retention-days: 1

image-build-distroless:
runs-on: ubuntu-latest
needs:
- create-release
- generate-metadata
- image-build
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: nightly

- name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: ghcr.io/${{ github.repository_owner }}/tinyauth

- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Build and push
uses: docker/build-push-action@v6
id: build
with:
platforms: linux/amd64
labels: ${{ steps.meta.outputs.labels }}
tags: ghcr.io/${{ github.repository_owner }}/tinyauth
outputs: type=image,push-by-digest=true,name-canonical=true,push=true
file: Dockerfile.distroless
cache-from: type=gha
cache-to: type=gha,mode=max
github-token: ${{ secrets.GITHUB_TOKEN }}
build-args: |
VERSION=${{ needs.generate-metadata.outputs.VERSION }}
COMMIT_HASH=${{ needs.generate-metadata.outputs.COMMIT_HASH }}
BUILD_TIMESTAMP=${{ needs.generate-metadata.outputs.BUILD_TIMESTAMP }}

- name: Export digest
run: |
mkdir -p ${{ runner.temp }}/digests
digest="${{ steps.build.outputs.digest }}"
touch "${{ runner.temp }}/digests/${digest#sha256:}"

- name: Upload digest
uses: actions/upload-artifact@v4
with:
name: digests-distroless-linux-amd64
path: ${{ runner.temp }}/digests/*
if-no-files-found: error
retention-days: 1

image-build-arm:
runs-on: ubuntu-24.04-arm
needs:
Expand Down Expand Up @@ -217,9 +279,63 @@ jobs:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Set version
- name: Build and push
uses: docker/build-push-action@v6
id: build
with:
platforms: linux/arm64
labels: ${{ steps.meta.outputs.labels }}
tags: ghcr.io/${{ github.repository_owner }}/tinyauth
outputs: type=image,push-by-digest=true,name-canonical=true,push=true
cache-from: type=gha
cache-to: type=gha,mode=max
github-token: ${{ secrets.GITHUB_TOKEN }}
build-args: |
VERSION=${{ needs.generate-metadata.outputs.VERSION }}
COMMIT_HASH=${{ needs.generate-metadata.outputs.COMMIT_HASH }}
BUILD_TIMESTAMP=${{ needs.generate-metadata.outputs.BUILD_TIMESTAMP }}

- name: Export digest
run: |
echo nightly > internal/assets/version
mkdir -p ${{ runner.temp }}/digests
digest="${{ steps.build.outputs.digest }}"
touch "${{ runner.temp }}/digests/${digest#sha256:}"

- name: Upload digest
uses: actions/upload-artifact@v4
with:
name: digests-linux-arm64
path: ${{ runner.temp }}/digests/*
if-no-files-found: error
retention-days: 1

image-build-arm-distroless:
runs-on: ubuntu-24.04-arm
needs:
- create-release
- generate-metadata
- image-build-arm
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: nightly

- name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: ghcr.io/${{ github.repository_owner }}/tinyauth

- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Build and push
uses: docker/build-push-action@v6
Expand All @@ -229,6 +345,10 @@ jobs:
labels: ${{ steps.meta.outputs.labels }}
tags: ghcr.io/${{ github.repository_owner }}/tinyauth
outputs: type=image,push-by-digest=true,name-canonical=true,push=true
file: Dockerfile.distroless
cache-from: type=gha
cache-to: type=gha,mode=max
github-token: ${{ secrets.GITHUB_TOKEN }}
build-args: |
VERSION=${{ needs.generate-metadata.outputs.VERSION }}
COMMIT_HASH=${{ needs.generate-metadata.outputs.COMMIT_HASH }}
Expand All @@ -243,7 +363,7 @@ jobs:
- name: Upload digest
uses: actions/upload-artifact@v4
with:
name: digests-linux-arm64
name: digests-distroless-linux-arm64
path: ${{ runner.temp }}/digests/*
if-no-files-found: error
retention-days: 1
Expand Down Expand Up @@ -276,6 +396,8 @@ jobs:
uses: docker/metadata-action@v5
with:
images: ghcr.io/${{ github.repository_owner }}/tinyauth
flavor: |
latest=false
tags: |
type=raw,nightly

Expand All @@ -285,6 +407,45 @@ jobs:
docker buildx imagetools create $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \
$(printf 'ghcr.io/${{ github.repository_owner }}/tinyauth@sha256:%s ' *)

image-merge-distroless:
runs-on: ubuntu-latest
needs:
- image-build-distroless
- image-build-arm-distroless
steps:
- name: Download digests
uses: actions/download-artifact@v4
with:
path: ${{ runner.temp }}/digests
pattern: digests-distroless-*
merge-multiple: true

- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: ghcr.io/${{ github.repository_owner }}/tinyauth
flavor: |
latest=false
tags: |
type=raw,nightly-distroless

- name: Create manifest list and push
working-directory: ${{ runner.temp }}/digests
run: |
docker buildx imagetools create $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \
$(printf 'ghcr.io/${{ github.repository_owner }}/tinyauth@sha256:%s ' *)

update-release:
runs-on: ubuntu-latest
needs:
Expand Down
Loading
Loading