4 Commits

Author SHA1 Message Date
54d71ba3f0 style(i18n): add missing newline at EOF in JSON files
All checks were successful
Auto Changelog & Release / detect-version-change (push) Successful in 2s
CI / build (push) Successful in 7s
Auto Changelog & Release / release (push) Has been skipped
Auto Changelog & Release / changelog-only (push) Successful in 6s
- Ensures JSON files adhere to standard formatting by adding a newline
  at the end of the file.
2025-05-28 18:14:51 +02:00
c02da70902 feat(vscode): enable Deno support and configure JSON formatting
- Enables Deno integration in VS Code settings
- Sets the default JSON formatter to Deno's extension
- Activates format-on-save for improved workflow
2025-05-28 18:14:51 +02:00
9ad407e531 feat(ci): add CI workflow with format, lint, and test steps
- Introduces a CI workflow triggered on push, pull requests, and manual dispatch
- Includes steps for code formatting, linting, and testing using Deno
- Fails the workflow if any of the steps do not succeed
2025-05-28 18:14:51 +02:00
07730e5761 feat(tasks): add formatting, linting, and CI tasks
- Introduces new tasks for code formatting and linting
- Adds a CI task combining formatting, linting, and testing
2025-05-28 18:14:51 +02:00
5 changed files with 57 additions and 3 deletions

46
.gitea/workflows/ci.yml Normal file
View File

@@ -0,0 +1,46 @@
name: CI
on:
workflow_dispatch:
push:
branches:
- main
pull_request:
types:
- opened
- synchronize
- reopened
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: denoland/setup-deno@v1
with:
deno-version: v2.x
- name: Format
id: format
continue-on-error: true
run: deno task fmt
- name: Lint
id: lint
continue-on-error: true
run: deno task lint
- name: Test
id: test
continue-on-error: true
run: deno task test
- name: Fail if any step failed
if: |
steps.format.outcome != 'success' ||
steps.lint.outcome != 'success' ||
steps.test.outcome != 'success'
run: |
echo "::error::One or more steps failed"
exit 1

View File

@@ -12,5 +12,10 @@
"/src/utils",
"/src/types",
"/src/i18n"
]
],
"deno.enable": true,
"[json]": {
"editor.defaultFormatter": "denoland.vscode-deno"
},
"editor.formatOnSave": true
}

View File

@@ -2,6 +2,9 @@
"tasks": {
"start": "deno run -A src/mod.ts",
"test": "deno test -A --coverage **/__tests__/*.test.ts",
"fmt": "deno fmt --check",
"lint": "deno lint",
"ci": "deno task fmt && deno task lint && deno task test", // For local CI checks
"build:amd64": "deno compile --target x86_64-unknown-linux-gnu --include VERSION --include src/i18n/de.json --include src/i18n/en.json --allow-env --allow-write --output dist/systemd-timer-linux-amd64 src/mod.ts",
"build:arm64": "deno compile --target aarch64-unknown-linux-gnu --include VERSION --include src/i18n/de.json --include src/i18n/en.json --allow-env --allow-write --output dist/systemd-timer-linux-arm64 src/mod.ts"
},

View File

@@ -19,4 +19,4 @@
"hint_header": "\nℹ️ Hinweis:",
"error_write_units": "Fehler beim Schreiben der Units:",
"rollback_failed": "Rollback fehlgeschlagen:"
}
}

View File

@@ -19,4 +19,4 @@
"hint_header": "\nℹ️ Note:",
"error_write_units": "Error while writing unit files:",
"rollback_failed": "Rollback failed:"
}
}