Philipp
d0a08da728
feat: add rollback_on_failure feature ( #88 )
...
Lint / pre-commit Linting (push) Successful in 44s
Test / Run Tests (push) Successful in 1m2s
This PR adds the ability to download existing code before deployment and automatically roll back if the post-deployment monitor detects a failure.
Reviewed-on: #88
Reviewed-by: LLMReview <27+autoreview@noreplay.horstenkamp.eu >
2026-05-17 13:13:58 +02:00
Philipp
076e96f3de
fix(monitor): use global console channel and implement shard filtering ( #87 )
...
Lint / pre-commit Linting (push) Successful in 47s
Test / Run Tests (push) Successful in 1m3s
This PR fixes the issue where console monitoring was empty when a specific shard was targeted on the official Screeps server.
### Changes:
- **Unified Subscription**: Changed WebSocket subscription path from `shard/console` (invalid) to the global `console` channel.
- **Shard Filtering**: Implemented client-side filtering in `handleConsoleEvent` to only display logs matching the targeted shard.
- **Precise Timing**: Retained the shard-specific `api.time()` call for accurate tick duration tracking.
- **Tests**: Added and updated 48 unit tests verifying the fix and shard filtering logic.
- **Distribution**: Rebuilt `dist/index.js` and bumped version to `v0.2.1`.
Reviewed-on: #87
2026-05-16 22:29:24 +02:00
Philipp
bf52580bf3
feat: add Screeps console monitoring with configurable error handling and shard support ( #84 )
...
Lint / pre-commit Linting (push) Successful in 1m5s
Test / Run Tests (push) Successful in 1m23s
Reviewed-on: #84
2026-05-16 19:44:39 +02:00
Philipp
be3c8ac7d2
feat: add CODEOWNERS file ( #85 )
...
Lint / pre-commit Linting (push) Successful in 41s
Test / Run Tests (push) Successful in 1m8s
This PR adds the `.gitea/CODEOWNERS` file to assign `@AutoReview` to all files.
Reviewed-on: #85
2026-05-16 17:14:31 +02:00
Philipp
2be5b2a1bc
chore: update @actions/core to v3 and migrate to ESM ( #73 )
...
This PR updates the `@actions/core` dependency from v2 to v3.0.0.
### Major Changes:
- **Dependency Update**: Updated `@actions/core` to `v3.0.0` in `package.json`.
- **ESM Migration**: Converted the entire project to ECMAScript Modules (ESM). This was necessary because `@actions/core` v3 is an ESM-only package and does not provide CommonJS exports.
- **`package.json` updates**: Added `"type": "module"` and updated the dependency version.
- **Code Refactor**:
- Converted `index.js` to use `import` and `export`.
- Updated the main execution check to use `import.meta.url` for ESM compatibility.
- Converted `__tests__/index.test.js` to use ESM imports for compatibility with the updated source code.
- **Production Build**: Re-generated the `dist/index.js` bundle using `ncc` to reflect the changes.
- **Node.js Version**: The project continues to use Node 20 (`node20` in `action.yaml`), which is fully compatible with these changes.
### Why these changes are needed:
- `@actions/core` v3 brings latest improvements and fixes from the GitHub Actions toolkit.
- Migrating to ESM is the modern standard for Node.js development and is required to consume ESM-only packages like the new `@actions/core` v3.
Verified with `npm test` and `npm run build`.
Reviewed-on: #73
2026-02-23 03:59:12 +01:00
Philipp
c5a58026fa
Remove unused pre-commit hooks ( #61 )
...
Test / Run Tests (push) Successful in 9m59s
Lint / pre-commit Linting (push) Successful in 10m6s
### **PR Type**
Enhancement
___
### **Description**
- Remove unused pre-commit hooks
- Delete `pretty-format-ini` and `pretty-format-toml`
___
<details> <summary><h3> File Walkthrough</h3></summary>
<table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Configuration changes</strong></td><td><table>
<tr>
<td>
<details>
<summary><strong>.pre-commit-config.yaml</strong><dd><code>Clean up pre-commit hook configuration</code> </dd></summary>
<hr>
.pre-commit-config.yaml
<ul><li>Removed <code>pretty-format-ini</code> hook entry<br> <li> Removed <code>pretty-format-toml</code> hook entry</ul>
</details>
</td>
<td><a href="https://git.horstenkamp.eu/Screeps/screeps-deploy-action/src/branch/chore/pre-commit-cleanup/.pre-commit-config.yaml ">+0/-8</a> </td>
</tr>
</table></td></tr></tr></tbody></table>
</details>
___
Reviewed-on: #61
2026-01-04 23:47:59 +01:00
Philipp
c05341c0a7
Enable minification for build artifact ( #60 )
...
Lint / pre-commit Linting (push) Successful in 1m29s
Test / Run Tests (push) Successful in 6m9s
### **PR Type**
Enhancement
___
### **Description**
- Enable minification in build script.
- Produce minified `dist/index.js` bundle.
___
<details> <summary><h3> File Walkthrough</h3></summary>
<table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Configuration changes</strong></td><td><table>
<tr>
<td>
<details>
<summary><strong>package.json</strong><dd><code>Add minification flag to build script</code> </dd></summary>
<hr>
package.json
- Added `-m` flag to build script.
</details>
</td>
<td><a href="https://git.horstenkamp.eu/Screeps/screeps-deploy-action/src/branch/build/minify/package.json ">+1/-1</a> </td>
</tr>
</table></td></tr><tr><td><strong>Build artifact</strong></td><td><table>
<tr>
<td>
<details>
<summary><strong>index.js</strong><dd><code>Provide minified distribution bundle</code> </dd></summary>
<hr>
dist/index.js
- Updated output to minified bundle.
</details>
</td>
<td><a href="https://git.horstenkamp.eu/Screeps/screeps-deploy-action/src/branch/build/minify/dist/index.js ">+5/-51912</a></td>
</tr>
</table></td></tr></tr></tbody></table>
</details>
___
Reviewed-on: #60
2026-01-04 07:17:33 +01:00
Philipp
6a098d425e
Enable minification for build artifact ( #60 )
...
### **PR Type**
Enhancement
___
### **Description**
- Enable minification in build script.
- Produce minified `dist/index.js` bundle.
___
<details> <summary><h3> File Walkthrough</h3></summary>
<table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Configuration changes</strong></td><td><table>
<tr>
<td>
<details>
<summary><strong>package.json</strong><dd><code>Add minification flag to build script</code> </dd></summary>
<hr>
package.json
- Added `-m` flag to build script.
</details>
</td>
<td><a href="https://git.horstenkamp.eu/Screeps/screeps-deploy-action/src/branch/build/minify/package.json ">+1/-1</a> </td>
</tr>
</table></td></tr><tr><td><strong>Build artifact</strong></td><td><table>
<tr>
<td>
<details>
<summary><strong>index.js</strong><dd><code>Provide minified distribution bundle</code> </dd></summary>
<hr>
dist/index.js
- Updated output to minified bundle.
</details>
</td>
<td><a href="https://git.horstenkamp.eu/Screeps/screeps-deploy-action/src/branch/build/minify/dist/index.js ">+5/-51912</a></td>
</tr>
</table></td></tr></tr></tbody></table>
</details>
___
Reviewed-on: #60
2026-01-04 07:17:05 +01:00
Philipp
3ff19001a7
chore: Add a unit testing framework ( #49 )
...
Lint / pre-commit Linting (push) Waiting to run
Test / Run Tests (push) Successful in 1m12s
Add vitest as a unit testing framework
Reviewed-on: #49
2026-01-04 07:02:20 +01:00
Philipp
a14206d32c
chore: enforce linux line endings ( #57 )
...
Lint / pre-commit Linting (push) Successful in 54s
Add .gitattributes and .editorconfig to enforce LF line endings. Update devcontainer settings.
Reviewed-on: #57
2026-01-03 21:57:34 +01:00
Philipp
3f19a64809
fix: pre-commit hooks should now be installable in dev containers ( #56 )
...
Lint / pre-commit Linting (push) Successful in 51s
Reviewed-on: #56
2025-12-31 18:55:42 +01:00
Philipp
97ecdcbc66
Exclude the dist forlder from pre-commit ( #54 )
...
Lint / pre-commit Linting (push) Successful in 1m12s
Reviewed-on: #54
2025-12-27 21:10:44 +01:00
Philipp
de6b54abe9
feat: use a custom build js step instead of all the dependencies ( #53 )
...
Lint / pre-commit Linting (push) Successful in 1m38s
Reviewed-on: #53
2025-12-27 19:25:56 +01:00
Philipp
60d3342a1c
chore: ressort whitespace hooks in pre-commit config ( #52 )
...
Lint / pre-commit Linting (push) Successful in 1m24s
Reviewed-on: #52
2025-12-27 01:42:41 +01:00
Philipp
e5773d3235
chore: format devcontainer.json and lint.yaml for consistency
Lint / pre-commit Linting (push) Successful in 1m23s
2025-12-27 01:39:31 +01:00
Philipp
0d97efec68
chore: ressort whitespace hooks in pre-commit config
2025-12-27 01:35:24 +01:00
Philipp
65486738c0
chore: add a devcontainer setup ( #50 )
...
Lint / pre-commit Linting (push) Successful in 1m30s
Add a devcontainer setup and remove a few redundent pre-commit hooks
Reviewed-on: #50
2025-12-27 01:02:36 +01:00
Philipp
25e4ba9f71
feat: Add relevant check-jsonschema pre-commit hooks ( #48 )
...
Lint / pre-commit Linting (push) Successful in 1m20s
Reviewed-on: #48
2025-12-21 14:03:52 +01:00
Philipp
76eaa21fb3
Add a npm rebuild option to the renovate.json ( #47 )
...
Lint / pre-commit Linting (push) Successful in 1m19s
Reviewed-on: #47
2025-12-21 12:22:25 +01:00
Philipp
e39a879879
Add a gemini Geminin CLI guid for the LLM and a NPM section that installs npm packages after updates via renovate ( #46 )
...
Lint / pre-commit Linting (push) Successful in 1m39s
Reviewed-on: #46
2025-12-21 01:19:31 +01:00
Philipp
291ffc41bc
Add a renovate.json schema validation ( #45 )
...
Lint / pre-commit Linting (push) Successful in 1m23s
Reviewed-on: #45
2025-12-19 17:51:59 +01:00
Philipp
60c6779c64
Add a renovate.json schema validation hook
Lint / pre-commit Linting (push) Successful in 1m25s
2025-12-19 17:49:54 +01:00
Philipp
fb80f152df
Add a schema validation for the renovate.json
2025-12-19 17:49:28 +01:00
Philipp
1da1212c8f
Run npm-install and add npm install as a post update option ( #42 )
...
Lint / pre-commit Linting (push) Successful in 1m35s
Reviewed-on: #42
2025-12-16 19:32:16 +01:00
Philipp
a892e71b21
run-npm-install ( #44 )
...
Lint / pre-commit Linting (push) Successful in 1m30s
Reviewed-on: #44
2025-12-16 01:10:50 +01:00
Philipp
74d74b73ad
Run npm install ( #43 )
...
Lint / pre-commit Linting (push) Successful in 1m18s
Reviewed-on: #43
2025-12-16 01:07:55 +01:00
Philipp
9d9dc1e822
Update renovate.json ( #28 )
...
Lint / pre-commit Linting (push) Successful in 2m0s
Reviewed-on: #28
2025-09-05 02:40:16 +02:00
Philipp
28b0ab9f02
chore: Configure Renovate ( #23 )
...
Lint / pre-commit Linting (push) Successful in 2m3s
Reviewed-on: #23
2025-08-10 15:01:15 +02:00
Philipp and Philipp Horstenkamp
6f0f75d7ad
Fixed glob import ( #21 )
...
Lint / pre-commit Linting (push) Successful in 32s
Glob was not imported as a function
Reviewed-on: #21
Co-authored-by: Philipp Horstenkamp <philipp@horstenkamp.de >
Co-committed-by: Philipp Horstenkamp <philipp@horstenkamp.de >
2025-04-21 21:00:29 +02:00
Philipp and Philipp Horstenkamp
318515b9c4
Update dependencies ( #20 )
...
Lint / pre-commit Linting (push) Successful in 29s
- @actions/core
- glob
- screeps-api
Reviewed-on: #20
Co-authored-by: Philipp Horstenkamp <philipp@horstenkamp.de >
Co-committed-by: Philipp Horstenkamp <philipp@horstenkamp.de >
2025-04-12 13:43:45 +02:00
Philipp and Philipp Horstenkamp
1aa7be2b73
Moved execution time ( #19 )
...
Lint / pre-commit Linting (push) Successful in 52s
Auto Maintenance Cycle / pre-commit Autoupdate (push) Successful in 1m52s
Reviewed-on: #19
Co-authored-by: Philipp Horstenkamp <philipp@horstenkamp.de >
Co-committed-by: Philipp Horstenkamp <philipp@horstenkamp.de >
2025-04-02 23:41:12 +02:00
Philipp and Philipp Horstenkamp
508eec34d7
Add an replacement for the {{hostname}} token. ( #15 )
...
Lint / pre-commit Linting (push) Successful in 49s
Reviewed-on: #15
Co-authored-by: Philipp Horstenkamp <philipp@horstenkamp.de >
Co-committed-by: Philipp Horstenkamp <philipp@horstenkamp.de >
2024-05-23 23:47:07 +02:00
Philipp and Philipp Horstenkamp
bee951fc34
Fixed the copyright note ( #14 )
...
Lint / pre-commit Linting (push) Successful in 45s
Reviewed-on: #14
Co-authored-by: Philipp Horstenkamp <philipp@horstenkamp.de >
Co-committed-by: Philipp Horstenkamp <philipp@horstenkamp.de >
2024-05-23 23:05:59 +02:00
Philipp and Philipp Horstenkamp
e342ceca6f
Added the ability to replace some placeholders in the screeps code ( #12 )
...
Lint / pre-commit Linting (push) Successful in 29s
added the `git-replace` option.
Replaceing {{gitRef}}, {{deployTime}} and {{gitHash}}.
Reviewed-on: #12
Co-authored-by: Philipp Horstenkamp <philipp@horstenkamp.de >
Co-committed-by: Philipp Horstenkamp <philipp@horstenkamp.de >
2023-12-25 02:22:42 +01:00
Philipp
4951253d52
Reworked the maintance action to use a PAT
Lint / pre-commit Linting (push) Successful in 55s
Auto Maintenance Cycle / pre-commit Autoupdate (push) Successful in 1m33s
2023-12-09 13:16:49 +01:00
Philipp and Philipp Horstenkamp
e7678a5f66
Added auth for private servers ( #7 )
...
Lint / pre-commit Linting (push) Successful in 45s
Reviewed-on: #7
Co-authored-by: Philipp Horstenkamp <philipp@horstenkamp.de >
Co-committed-by: Philipp Horstenkamp <philipp@horstenkamp.de >
2023-11-26 22:24:16 +01:00
Philipp and Philipp Horstenkamp
6f5729c12a
First development of the deploy action ( #6 )
...
Lint / pre-commit Linting (push) Has been cancelled
Deploy js code to an instance of screeps.
Some debugging tools are implemented.
Reviewed-on: #6
Co-authored-by: Philipp Horstenkamp <philipp@horstenkamp.de >
Co-committed-by: Philipp Horstenkamp <philipp@horstenkamp.de >
2023-11-26 18:31:49 +01:00
Philipp and Philipp Horstenkamp
df14b016b7
Fixed the name of the lint workflow.
Lint / pre-commit Linting (push) Successful in 20s
2023-11-25 00:29:16 +01:00
Philipp
1c65914e79
Reworked the maintance action.
Auto Maintenance Cycle / pre-commit Linting (push) Successful in 20s
Auto Maintenance Cycle / pre-commit Autoupdate (push) Successful in 37s
2023-11-24 22:35:44 +01:00