Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
3 changes: 2 additions & 1 deletion .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@ updates:
- package-ecosystem: 'github-actions'
directory: '/'
schedule:
interval: 'monthly'
interval: 'weekly'
target-branch: 'development'
groups:
github-actions:
patterns:
Expand Down
11 changes: 7 additions & 4 deletions .github/workflows/checks.yml
Original file line number Diff line number Diff line change
@@ -1,18 +1,21 @@
---
name: Checks

on:
push:
branches:
- development
- main
- master
pull_request:
branches:
- development
- main
- master

permissions:
contents: read

jobs:
checks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: Screenly/edge-apps-actions/checks@v1
uses: Screenly/edge-apps-actions/.github/workflows/checks.yml@v26.10.2
24 changes: 10 additions & 14 deletions .github/workflows/initialize-edge-app.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,21 +21,17 @@ on:
required: true
type: string

permissions:
contents: read

run-name: Initializing ${{ inputs.edge_app_name }} in ${{ inputs.environment }}

jobs:
initialize:
name: Initializing ${{ inputs.edge_app_name }} in ${{ inputs.environment }}
runs-on: ubuntu-latest
environment: ${{ inputs.environment }}
steps:
- uses: actions/checkout@v7
with:
ref: ${{ inputs.environment == 'production' && 'main' || github.ref }}
- uses: Screenly/edge-apps-actions/initialize@f4ccd2bd50db5fb0a5147d287ac03cafe552d29b
with:
screenly_api_token: ${{ secrets.SCREENLY_API_TOKEN }}
edge_app_name: ${{ inputs.edge_app_name }}
edge_app_title: ${{ inputs.edge_app_title }}
environment: ${{ inputs.environment }}
edge_app_id: ${{ secrets.EDGE_APP_ID || (inputs.environment == 'production' && vars.PRODUCTION_EDGE_APP_ID || (inputs.environment == 'stage' && vars.STAGE_EDGE_APP_ID)) }}
uses: Screenly/edge-apps-actions/.github/workflows/initialize.yml@v26.10.2
with:
environment: ${{ inputs.environment }}
edge_app_name: ${{ inputs.edge_app_name }}
edge_app_title: ${{ inputs.edge_app_title }}
secrets:
SCREENLY_API_TOKEN: ${{ secrets.SCREENLY_API_TOKEN }}
40 changes: 11 additions & 29 deletions .github/workflows/update-edge-app.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,36 +5,18 @@ on:
workflow_dispatch:
push:
branches:
- development
- main
- master
tags:
- 'v[0-9]*'

run-name: Updating Simple Timer App in ${{ github.event_name == 'workflow_dispatch' && 'stage' || (github.ref == 'refs/heads/main' && 'production' || 'stage') }}
permissions:
contents: read

jobs:
deploy-stage:
name: Updating Simple Timer App in stage
runs-on: ubuntu-latest
if: (github.event_name == 'push' && github.ref == 'refs/heads/development') || github.event_name == 'workflow_dispatch'
environment: stage
steps:
- uses: actions/checkout@v7
- uses: Screenly/edge-apps-actions/update@f4ccd2bd50db5fb0a5147d287ac03cafe552d29b
with:
screenly_api_token: ${{ secrets.SCREENLY_API_TOKEN }}
environment: stage
delete_missing_settings: 'true'
edge_app_id: ${{ secrets.EDGE_APP_ID || vars.STAGE_EDGE_APP_ID }}
run-name: Updating Simple Timer App in ${{ (github.event_name == 'push' && !github.event.deleted && startsWith(github.ref, 'refs/tags/v')) && 'production' || 'stage' }}

deploy-production:
name: Updating Simple Timer App in production
runs-on: ubuntu-latest
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
environment: production
steps:
- uses: actions/checkout@v7
- uses: Screenly/edge-apps-actions/update@f4ccd2bd50db5fb0a5147d287ac03cafe552d29b
with:
screenly_api_token: ${{ secrets.SCREENLY_API_TOKEN }}
environment: production
delete_missing_settings: 'true'
edge_app_id: ${{ secrets.EDGE_APP_ID || vars.PRODUCTION_EDGE_APP_ID }}
jobs:
update:
uses: Screenly/edge-apps-actions/.github/workflows/update.yml@v26.10.2
secrets:
SCREENLY_API_TOKEN: ${{ secrets.SCREENLY_API_TOKEN }}
20 changes: 20 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
[![Version](https://img.shields.io/github/v/release/Screenly/simple-timer-app)](https://github.com/Screenly/simple-timer-app/releases/latest)

# Screenly Simple Timer App

![Simple Timer App Preview](/screenshots/1920x1080.webp)

## Getting Started

```bash
Expand All @@ -16,6 +20,22 @@ bun run deploy
screenly edge-app instance create
```

### Releasing

Pushes to `main` start a stage deploy, which waits for approval. To release to production, tag a commit on `main` and push the tag (the workflow refuses tags not on `main`); the production deploy also waits for approval:

```bash
git checkout main && git pull
git tag v26.10.0
git push origin v26.10.0
```

Then publish a GitHub Release whose notes list the pull requests merged since the previous release. Add `--draft` to review the notes before publishing:

```bash
gh release create v26.10.0 --verify-tag --generate-notes --title v26.10.0
```

## Configuration

The app accepts the following settings via `screenly.yml`:
Expand Down
Loading