Skip to content

Commit

Permalink
Merge pull request #1565 from jellyfin/unstable
Browse files Browse the repository at this point in the history
  • Loading branch information
cewert authored Dec 9, 2023
2 parents e70e55f + c9cf700 commit 5d856f1
Show file tree
Hide file tree
Showing 672 changed files with 97,192 additions and 40,554 deletions.
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @jellyfin/roku
30 changes: 30 additions & 0 deletions .github/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
changelog:
categories:
- title: 🆕 New Features
labels:
- "new-feature"
- title: ⚙️ New Settings
labels:
- "new-setting"
- title: 🔧 General Improvements
labels:
- "general-improvement"
- title: 🐛 Bug Fixes
labels:
- "bug-fix"
- title: 🧹 Code Cleanup
labels:
- "code-cleanup"
- title: 💻 Dev Improvements
labels:
- "dev-improvement"
- title: 📝 Documentation
labels:
- "documentation"
- title: ⭐ Additional Updates
labels:
- "*"
exclude:
labels:
- dependencies
- ignore-changelog
4 changes: 3 additions & 1 deletion .github/workflows/auto-close-stale-pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ on:

jobs:
stale:
if: github.repository == 'jellyfin/jellyfin-roku'
runs-on: ubuntu-latest
permissions:
pull-requests: write
Expand All @@ -13,9 +14,10 @@ jobs:
with:
days-before-issue-stale: -1
days-before-issue-close: -1
stale-pr-label: stale
stale-pr-message: "This pull request has been inactive for 21 days and will be automatically closed in 7 days if there is no further activity."
close-pr-message: "This pull request has been closed because it has been inactive for 28 days. You may submit a new pull request if desired."
days-before-pr-stale: 21
days-before-pr-close: 7
exempt-draft-pr: true
repo-token: ${{ secrets.GITHUB_TOKEN }}
repo-token: ${{ secrets.JF_BOT_TOKEN }}
7 changes: 5 additions & 2 deletions .github/workflows/automations.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ on:

jobs:
project:
if: github.repository == 'jellyfin/jellyfin-roku'
name: Project board 📊
runs-on: ubuntu-latest
steps:
Expand All @@ -23,11 +24,13 @@ jobs:
column: In progress
repo-token: ${{ secrets.JF_BOT_TOKEN }}
label:
if: github.repository == 'jellyfin/jellyfin-roku'
name: Labeling 🏷️
runs-on: ubuntu-latest
steps:
- name: Check all PRs for merge conflicts ⛔
uses: eps1lon/actions-label-merge-conflict@releases/2.x
with:
dirtyLabel: "merge conflict"
repoToken: ${{ secrets.GITHUB_TOKEN }}
dirtyLabel: "merge-conflict"
commentOnDirty: "This pull request has merge conflicts. Please resolve the conflicts so the PR can be reviewed. Thanks!"
repoToken: ${{ secrets.JF_BOT_TOKEN }}
21 changes: 12 additions & 9 deletions .github/workflows/build-dev.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: build
name: build-dev

on:
pull_request:
Expand All @@ -12,16 +12,19 @@ jobs:
dev:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3
- uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- uses: actions/setup-node@8f152de45cc393bb48ce5d89d36b731f54556e65 # v4
with:
node-version: "lts/*"
cache: "npm"
- run: npm ci
- run: npx ropm install
- run: make dev
- uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3
- name: NPM install
run: npm ci
- name: Install roku module dependencies
run: npm run ropm
- name: Build app
run: npm run build
- uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3
with:
name: Jellyfin-Roku-dev-${{ github.sha }}
path: ${{ github.workspace }}/out/staging
if-no-files-found: error
path: ${{ github.workspace }}/build/staging
if-no-files-found: error
33 changes: 33 additions & 0 deletions .github/workflows/build-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: build-docs

on:
push:
branches:
- unstable

jobs:
docs:
if: github.repository == 'jellyfin/jellyfin-roku'
runs-on: ubuntu-latest
permissions:
# Give the default GITHUB_TOKEN write permission to commit and push the changed files back to the repository.
contents: write
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.JF_BOT_TOKEN }}
- name: Install NPM dependencies
run: npm ci
- name: Build API docs
# TODO: fix jsdoc build errors then remove '|| true' from run command below
run: npm run docs || true
- name: Commit any changes back to the unstable branch
uses: stefanzweifel/git-auto-commit-action@8756aa072ef5b4a080af5dc8fef36c5d586e521d # v5
with:
commit_message: Update API docs
# use jellyfin-bot to commit the changes instead of the default github-actions[bot]
commit_user_name: jellyfin-bot
commit_user_email: [email protected]
# use jellyfin-bot to author the changes instead of the default author of the merge commit
commit_author: jellyfin-bot <[email protected]>
29 changes: 16 additions & 13 deletions .github/workflows/build-prod.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: build
name: build-prod

on:
pull_request:
Expand All @@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout master (the latest release)
uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
with:
ref: master
- name: Install jq to parse json
Expand All @@ -33,7 +33,7 @@ jobs:
- name: Save old Makefile version
run: awk 'BEGIN { FS=" = " } /^VERSION/ { print "oldMakeVersion="$2; }' Makefile >> $GITHUB_ENV
- name: Checkout PR branch
uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3
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
Expand All @@ -51,7 +51,7 @@ jobs:
if: env.oldManVersion == env.newManVersion
run: exit 1
- name: Save new Makefile version
run: awk 'BEGIN { FS=" = " } /^VERSION/ { print "newMakeVersion="$2; }' Makefile >> $GITHUB_ENV
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
Expand All @@ -61,16 +61,19 @@ jobs:
prod:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3
- uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- uses: actions/setup-node@8f152de45cc393bb48ce5d89d36b731f54556e65 # v4
with:
node-version: "lts/*"
cache: "npm"
- run: npm ci
- run: npx ropm install
- run: make release
- uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3
- 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-release-${{ github.sha }}
path: ${{ github.workspace }}/out/staging
if-no-files-found: error
name: Jellyfin-Roku-v${{ env.newManVersion }}-${{ github.sha }}
path: ${{ github.workspace }}/build/staging
if-no-files-found: error
43 changes: 43 additions & 0 deletions .github/workflows/deploy-api-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# Simple workflow for deploying static content to GitHub Pages
name: deploy-api-docs

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

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false

jobs:
deploy:
if: github.repository == 'jellyfin/jellyfin-roku'
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- name: Setup Pages
uses: actions/configure-pages@1f0c5cde4bc74cd7e1254d0cb4de8d49e9068c7d # v4
- name: Upload artifact
uses: actions/upload-pages-artifact@a753861a5debcf57bf8b404356158c8e1e33150c # v2
with:
# Only upload the api docs folder
path: "docs/api"
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@77d7344265e1f960dab5c00dbff52287a70b0d4f # v3
39 changes: 39 additions & 0 deletions .github/workflows/roku-analysis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: roku-analysis

on:
pull_request:
push:

env:
BRANCH_NAME: ${{ github.head_ref || github.ref_name }}

jobs:
static:
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 dev app
if: env.BRANCH_NAME != 'master'
run: npm run build
- name: Build app for production
if: env.BRANCH_NAME == 'master'
run: npm run build-prod
- name: Use Java 17
uses: actions/setup-java@387ac29b308b003ca37ba93a6cab5eb57c8f5f93 # v4
with:
distribution: "temurin"
java-version: "17"
- name: Download the Static Channel Analysis CLI
run: |
curl -sSL "https://devtools.web.roku.com/static-channel-analysis/sca-cmd.zip" -o sca-cmd.zip
unzip sca-cmd.zip
- name: Run Roku Static Analysis
run: ./sca-cmd/bin/sca-cmd ${{ github.workspace }}/build/staging --exit error
17 changes: 8 additions & 9 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,18 +1,17 @@
*.svg
jellyfin-roku.zip
source/globals.brs
.env

###BrightScript specific
# BrightScript
dist/apps
out/

build/
roku_modules

#NPM modules
source/globals.brs
jellyfin-roku.zip
# Rooibos
bsconfig-tdd.json
# NPM
node_modules/

#Eclipse
# Eclipse
.buildpath
.project
.settings
Loading

0 comments on commit 5d856f1

Please sign in to comment.