From b760465f1c1a5d652197ed22bd57bdc4e5160c9a Mon Sep 17 00:00:00 2001 From: angel Date: Sun, 25 Jan 2026 01:29:13 +0000 Subject: [PATCH] fix: docker startup issue, add GitHub release workflow and changelog config --- .github/workflows/github-release.yml | 33 ++++++++++++++++++++ Dockerfile | 4 +-- cliff.toml | 46 ++++++++++++++++++++++++++++ entrypoint.sh | 4 +++ 4 files changed, 84 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/github-release.yml create mode 100644 cliff.toml diff --git a/.github/workflows/github-release.yml b/.github/workflows/github-release.yml new file mode 100644 index 0000000..ca511e6 --- /dev/null +++ b/.github/workflows/github-release.yml @@ -0,0 +1,33 @@ +name: GitHub Release + +on: + push: + tags: + - 'v*' + +permissions: + contents: write + +jobs: + release: + name: Create Release + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Generate changelog + id: changelog + uses: orhun/git-cliff-action@v4 + with: + config: cliff.toml + args: --latest --strip header + + - name: Create Release + uses: softprops/action-gh-release@v2 + with: + body: ${{ steps.changelog.outputs.content }} + draft: false + prerelease: false diff --git a/Dockerfile b/Dockerfile index 43222ce..929ce82 100644 --- a/Dockerfile +++ b/Dockerfile @@ -24,11 +24,9 @@ COPY README.md /app/ ENV NEXT_PUBLIC_NAVIDROME_URL=NEXT_PUBLIC_NAVIDROME_URL ENV NEXT_PUBLIC_NAVIDROME_USERNAME=NEXT_PUBLIC_NAVIDROME_USERNAME ENV NEXT_PUBLIC_NAVIDROME_PASSWORD=NEXT_PUBLIC_NAVIDROME_PASSWORD +ENV NEXT_PUBLIC_COMMIT_SHA=docker-build ENV PORT=3000 -# Generate git commit hash for build info (fallback if not available) -RUN echo "NEXT_PUBLIC_COMMIT_SHA=docker-build" > .env.local - # Build the application RUN pnpm build diff --git a/cliff.toml b/cliff.toml new file mode 100644 index 0000000..5495b09 --- /dev/null +++ b/cliff.toml @@ -0,0 +1,46 @@ +# git-cliff configuration for changelog generation +# https://git-cliff.org + +[changelog] +header = """ +# Changelog + +All notable changes to this project will be documented in this file. +""" +body = """ +{% if version %}\ + ## [{{ version | trim_start_matches(pat="v") }}] - {{ timestamp | date(format="%Y-%m-%d") }} +{% else %}\ + ## [unreleased] +{% endif %}\ +{% for group, commits in commits | group_by(attribute="group") %} + ### {{ group | striptags | trim | upper_first }} + {% for commit in commits %} + - {% if commit.scope %}{{ commit.scope }}: {% endif %}\ + {{ commit.message | upper_first }}\ + {% endfor %} +{% endfor %} +""" +footer = "" +trim = true + +[git] +conventional_commits = true +filter_unconventional = true +split_commits = false +commit_parsers = [ + { message = "^feat", group = "Features" }, + { message = "^fix", group = "Bug Fixes" }, + { message = "^doc", group = "Documentation" }, + { message = "^perf", group = "Performance" }, + { message = "^refactor", group = "Refactoring" }, + { message = "^style", group = "Styling" }, + { message = "^test", group = "Testing" }, + { message = "^chore\\(release\\)", skip = true }, + { message = "^chore|^ci", group = "Miscellaneous" }, +] +protect_breaking_commits = false +filter_commits = false +tag_pattern = "v[0-9].*" +topo_order = false +sort_commits = "oldest" diff --git a/entrypoint.sh b/entrypoint.sh index e76238f..1ebf09a 100644 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -15,3 +15,7 @@ printenv | grep NEXT_PUBLIC_ | while read -r line ; do done echo "✅ Environment variable replacement complete" +echo "🚀 Starting Next.js application..." + +# Execute the command passed as arguments +exec "$@"