Skip to content

Commit

Permalink
Merge pull request #1585 from jellyfin/master
Browse files Browse the repository at this point in the history
  • Loading branch information
cewert authored Dec 16, 2023
2 parents fb6fdbe + 66b0840 commit 51452ab
Show file tree
Hide file tree
Showing 7 changed files with 88 additions and 61 deletions.
2 changes: 0 additions & 2 deletions .github/workflows/automations.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@ concurrency:

on:
push:
branches:
- unstable
pull_request_target:

jobs:
Expand Down
5 changes: 2 additions & 3 deletions .github/workflows/build-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,10 @@ name: build-dev

on:
pull_request:
branches-ignore:
- master
push:
branches:
- unstable
- master
- "*.*.z"

jobs:
dev:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: build-docs
on:
push:
branches:
- unstable
- master

jobs:
docs:
Expand Down
55 changes: 3 additions & 52 deletions .github/workflows/build-prod.yml
Original file line number Diff line number Diff line change
@@ -1,64 +1,15 @@
# Builds the production version of the app
name: build-prod

on:
pull_request:
branches:
- master
push:
branches:
- master
- "*.*.z"

jobs:
version-check:
runs-on: ubuntu-latest
steps:
- name: Checkout master (the latest release)
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
with:
ref: master
- name: Install jq to parse json
uses: awalsh128/cache-apt-pkgs-action@latest
with:
packages: jq
- name: Save old package.json version
run: echo "oldPackVersion=$(jq -r ".version" package.json)" >> $GITHUB_ENV
- name: Find and save old major_version from manifest
run: awk 'BEGIN { FS="=" } /^major_version/ { print "oldMajor="$2; }' manifest >> $GITHUB_ENV
- name: Find and save old minor_version from manifest
run: awk 'BEGIN { FS="=" } /^minor_version/ { print "oldMinor="$2; }' manifest >> $GITHUB_ENV
- name: Find and save old build_version from manifest
run: awk 'BEGIN { FS="=" } /^build_version/ { print "oldBuild="$2; }' manifest >> $GITHUB_ENV
- name: Save old manifest version
run: echo "oldManVersion=${{ env.oldMajor }}.${{ env.oldMinor }}.${{ env.oldBuild }}" >> $GITHUB_ENV
- name: Save old Makefile version
run: awk 'BEGIN { FS=" := " } /^VERSION/ { print "oldMakeVersion="$2; }' Makefile >> $GITHUB_ENV
- name: Checkout PR branch
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- name: Save new package.json version
run: echo "newPackVersion=$(jq -r ".version" package.json)" >> $GITHUB_ENV
- name: package.json version must be updated
if: env.oldPackVersion == env.newPackVersion
run: exit 1
- name: Find and save new major_version from manifest
run: awk 'BEGIN { FS="=" } /^major_version/ { print "newMajor="$2; }' manifest >> $GITHUB_ENV
- name: Find and save new minor_version from manifest
run: awk 'BEGIN { FS="=" } /^minor_version/ { print "newMinor="$2; }' manifest >> $GITHUB_ENV
- name: Find and save new build_version from manifest
run: awk 'BEGIN { FS="=" } /^build_version/ { print "newBuild="$2; }' manifest >> $GITHUB_ENV
- name: Save new manifest version
run: echo "newManVersion=${{ env.newMajor }}.${{ env.newMinor }}.${{ env.newBuild }}" >> $GITHUB_ENV
- name: Manifest version must be updated
if: env.oldManVersion == env.newManVersion
run: exit 1
- name: Save new Makefile version
run: awk 'BEGIN { FS=" := " } /^VERSION/ { print "newMakeVersion="$2; }' Makefile >> $GITHUB_ENV
- name: Makefile version must be updated
if: env.oldMakeVersion == env.newMakeVersion
run: exit 1
- name: All new versions must match
if: (env.newManVersion != env.newPackVersion) || (env.newManVersion != env.newMakeVersion)
run: exit 1
prod:
if: ${{ github.event_name == 'push' || contains(github.event.pull_request.labels.*.name, 'release-prep') }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/deploy-api-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: deploy-api-docs

on:
push:
branches: ["unstable"]
branches: ["master"]
paths: ["docs/**"] # only run if the docs are updated

# Allows you to run this workflow manually from the Actions tab
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ name: lint
on:
pull_request:


jobs:
brightscript:
runs-on: ubuntu-latest
Expand Down Expand Up @@ -79,4 +78,4 @@ jobs:
- name: Install roku package dependencies
run: npx ropm install
- name: Check markdown files for spelling errors
run: npm run lint-spelling
run: npm run lint-spelling
80 changes: 80 additions & 0 deletions .github/workflows/release-prep.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
# All of the jobs in this workflow will only run if the PR that triggered it has a 'release-prep' label
name: release-prep

on:
pull_request:
types: [labeled, opened, reopened, synchronize]

jobs:
version-check:
if: ${{ contains(github.event.pull_request.labels.*.name, 'release-prep') }}
runs-on: ubuntu-latest
steps:
- name: DEBUG ${{ github.event.pull_request.base.ref }}
run: echo ${{ github.event.pull_request.base.ref }}
- name: Checkout the branch this PR wants to update
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
with:
ref: ${{ github.event.pull_request.base.ref }}
- name: Install jq to parse json
uses: awalsh128/cache-apt-pkgs-action@latest
with:
packages: jq
- name: Save old package.json version
run: echo "oldPackVersion=$(jq -r ".version" package.json)" >> $GITHUB_ENV
- name: Find and save old major_version from manifest
run: awk 'BEGIN { FS="=" } /^major_version/ { print "oldMajor="$2; }' manifest >> $GITHUB_ENV
- name: Find and save old minor_version from manifest
run: awk 'BEGIN { FS="=" } /^minor_version/ { print "oldMinor="$2; }' manifest >> $GITHUB_ENV
- name: Find and save old build_version from manifest
run: awk 'BEGIN { FS="=" } /^build_version/ { print "oldBuild="$2; }' manifest >> $GITHUB_ENV
- name: Save old manifest version
run: echo "oldManVersion=${{ env.oldMajor }}.${{ env.oldMinor }}.${{ env.oldBuild }}" >> $GITHUB_ENV
- name: Save old Makefile version
run: awk 'BEGIN { FS=" := " } /^VERSION/ { print "oldMakeVersion="$2; }' Makefile >> $GITHUB_ENV
- name: Checkout PR branch
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- name: Save new package.json version
run: echo "newPackVersion=$(jq -r ".version" package.json)" >> $GITHUB_ENV
- name: package.json version must be updated
if: env.oldPackVersion == env.newPackVersion
run: exit 1
- name: Find and save new major_version from manifest
run: awk 'BEGIN { FS="=" } /^major_version/ { print "newMajor="$2; }' manifest >> $GITHUB_ENV
- name: Find and save new minor_version from manifest
run: awk 'BEGIN { FS="=" } /^minor_version/ { print "newMinor="$2; }' manifest >> $GITHUB_ENV
- name: Find and save new build_version from manifest
run: awk 'BEGIN { FS="=" } /^build_version/ { print "newBuild="$2; }' manifest >> $GITHUB_ENV
- name: Save new manifest version
run: echo "newManVersion=${{ env.newMajor }}.${{ env.newMinor }}.${{ env.newBuild }}" >> $GITHUB_ENV
- name: Manifest version must be updated
if: env.oldManVersion == env.newManVersion
run: exit 1
- name: Save new Makefile version
run: awk 'BEGIN { FS=" := " } /^VERSION/ { print "newMakeVersion="$2; }' Makefile >> $GITHUB_ENV
- name: Makefile version must be updated
if: env.oldMakeVersion == env.newMakeVersion
run: exit 1
- name: All new versions must match
if: (env.newManVersion != env.newPackVersion) || (env.newManVersion != env.newMakeVersion)
run: exit 1
build-prod:
if: ${{ contains(github.event.pull_request.labels.*.name, 'release-prep') }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- uses: actions/setup-node@8f152de45cc393bb48ce5d89d36b731f54556e65 # v4
with:
node-version: "lts/*"
cache: "npm"
- name: NPM install
run: npm ci
- name: Install roku module dependencies
run: npm run ropm
- name: Build app for production
run: npm run build-prod
- uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3
with:
name: Jellyfin-Roku-v${{ env.newManVersion }}-${{ github.sha }}
path: ${{ github.workspace }}/build/staging
if-no-files-found: error

0 comments on commit 51452ab

Please sign in to comment.