Compare commits
24 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ba907d0898 | ||
|
|
d0b8c38526 | ||
|
|
ffd91abcf3 | ||
|
|
e65a8c9b29 | ||
|
|
2ad4f3be86 | ||
|
|
5cf4dbe489 | ||
|
|
c7cac56ba1 | ||
|
|
278f37da10 | ||
|
|
c6338c4a08 | ||
|
|
67213a44dc | ||
|
|
6290ac79d4 | ||
|
|
d28110fc9a | ||
|
|
f37028c2c4 | ||
|
|
00ec9e2cb5 | ||
|
|
797d1f00c7 | ||
|
|
8e492feecf | ||
|
|
cf764c66e0 | ||
|
|
6a013ee048 | ||
|
|
02d117a742 | ||
|
|
12ac695772 | ||
|
|
25b48344e9 | ||
|
|
29ab4f8513 | ||
|
|
1d215422d4 | ||
|
|
dbf8325cd3 |
4
.checkov.yaml
Normal file
4
.checkov.yaml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
quiet: true
|
||||||
|
skip-check:
|
||||||
|
- CKV_DOCKER_2
|
||||||
|
- CKV_DOCKER_3
|
||||||
69
.github/copilot-instructions.md
vendored
Normal file
69
.github/copilot-instructions.md
vendored
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
# Copilot Instructions
|
||||||
|
|
||||||
|
This GitHub Action is written as a Docker container that invokes an entrypoint
|
||||||
|
script. The entrypoint script is responsible for invoking the main logic of the
|
||||||
|
action.
|
||||||
|
|
||||||
|
## Repository Structure
|
||||||
|
|
||||||
|
| Path | Description |
|
||||||
|
| -------------------- | ----------------------------------- |
|
||||||
|
| `.devcontainer/` | Development Container Configuration |
|
||||||
|
| `.github/` | GitHub Configuration |
|
||||||
|
| `.markdown-lint.yml` | Markdown Linter Configuration |
|
||||||
|
| `.prettierrc.yml` | Prettier Formatter Configuration |
|
||||||
|
| `.yaml-lint.yml` | YAML Linter Configuration |
|
||||||
|
| `action.yml` | GitHub Action Metadata |
|
||||||
|
| `CODEOWNERS` | Code Owners File |
|
||||||
|
| `Dockerfile` | Dockerfile for the Action |
|
||||||
|
| `entrypoint.sh` | Entrypoint Script |
|
||||||
|
| `LICENSE` | License File |
|
||||||
|
| `README.md` | Project Documentation |
|
||||||
|
|
||||||
|
## General Coding Guidelines
|
||||||
|
|
||||||
|
- Follow standard shell scripting conventions and best practices
|
||||||
|
- Changes should maintain consistency with existing patterns and style
|
||||||
|
- Document changes clearly and thoroughly, including updates to existing
|
||||||
|
comments when appropriate
|
||||||
|
- Do not include basic, unnecessary comments that simply restate what the code
|
||||||
|
is doing (focus on explaining _why_, not _what_)
|
||||||
|
- Use consistent error handling patterns throughout the codebase
|
||||||
|
- Keep functions focused and manageable
|
||||||
|
- Use descriptive variable and function names that clearly convey their purpose
|
||||||
|
- When suggesting code changes, always opt for the most maintainable approach.
|
||||||
|
Try your best to keep the code clean and follow "Don't Repeat Yourself" (DRY)
|
||||||
|
principles
|
||||||
|
- Avoid unnecessary complexity and always consider the long-term maintainability
|
||||||
|
of the code
|
||||||
|
|
||||||
|
### Versioning
|
||||||
|
|
||||||
|
GitHub Actions are versioned using branch and tag names. The version should
|
||||||
|
follow [Semantic Versioning](https://semver.org/) principles.
|
||||||
|
|
||||||
|
## Pull Request Guidelines
|
||||||
|
|
||||||
|
When creating a pull request (PR), please ensure that:
|
||||||
|
|
||||||
|
- Keep changes focused and minimal (avoid large changes, or consider breaking
|
||||||
|
them into separate, smaller PRs)
|
||||||
|
- Formatting checks pass
|
||||||
|
- Linting checks pass
|
||||||
|
- If necessary, the `README.md` file is updated to reflect any changes in
|
||||||
|
functionality or usage
|
||||||
|
|
||||||
|
The body of the PR should include:
|
||||||
|
|
||||||
|
- A summary of the changes
|
||||||
|
- A special note of any changes to dependencies
|
||||||
|
- A link to any relevant issues or discussions
|
||||||
|
- Any additional context that may be helpful for reviewers
|
||||||
|
|
||||||
|
## Code Review Guidelines
|
||||||
|
|
||||||
|
When performing a code review, please follow these guidelines:
|
||||||
|
|
||||||
|
- If there are changes that modify the functionality/usage of the action,
|
||||||
|
validate that there are changes in the `README.md` file that document the new
|
||||||
|
or modified functionality
|
||||||
34
.github/prompts/create-release-notes.prompt.md
vendored
Normal file
34
.github/prompts/create-release-notes.prompt.md
vendored
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
# Create Release Notes
|
||||||
|
|
||||||
|
You are an expert technical writer tasked with creating release notes for
|
||||||
|
updates to this repository. Your specific task is to generate release notes that
|
||||||
|
are clear, concise, and useful for developers and users of the project.
|
||||||
|
|
||||||
|
## Guidelines
|
||||||
|
|
||||||
|
Ensure you adhere to the following guidelines when creating release notes:
|
||||||
|
|
||||||
|
- Use a clear and consistent format for the release notes
|
||||||
|
- Include a summary of the changes made in the release
|
||||||
|
- Highlight any new features, improvements, or bugfixes
|
||||||
|
- If applicable, include instructions for upgrading or migrating to the new
|
||||||
|
version
|
||||||
|
- Use technical language that is appropriate for the audience, but avoid jargon
|
||||||
|
that may not be understood by all users
|
||||||
|
- Ensure that the release notes are easy to read and navigate
|
||||||
|
- Include relevant issue or PR numbers where applicable
|
||||||
|
- Use proper Markdown formatting
|
||||||
|
- Use code blocks for commands, configuration examples, or code changes
|
||||||
|
- Use note and warning callouts for important information
|
||||||
|
|
||||||
|
## Versioning
|
||||||
|
|
||||||
|
GitHub Actions are versioned using branch and tag names. The version in the
|
||||||
|
project's `package.json` should reflect the changes made in the codebase and
|
||||||
|
follow [Semantic Versioning](https://semver.org/) principles. Depending on the
|
||||||
|
nature of the changes, please make sure to adjust the release notes accordingly:
|
||||||
|
|
||||||
|
- For **major** changes, include a detailed description of the breaking changes
|
||||||
|
and how users can adapt to them
|
||||||
|
- For **minor** changes, highlight new features and improvements
|
||||||
|
- For **patch** changes, focus on bugfixes and minor improvements
|
||||||
8
.github/workflows/cd.yml
vendored
8
.github/workflows/cd.yml
vendored
@@ -35,14 +35,14 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
id: checkout
|
id: checkout
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v6
|
||||||
with:
|
with:
|
||||||
fetch-tags: true
|
fetch-tags: true
|
||||||
ref: main
|
ref: main
|
||||||
|
|
||||||
- name: Check Version
|
- name: Check Version
|
||||||
id: version
|
id: version
|
||||||
uses: issue-ops/semver@v2
|
uses: issue-ops/semver@v3
|
||||||
with:
|
with:
|
||||||
check-only: true
|
check-only: true
|
||||||
manifest-path: ${{ env.MANIFEST_PATH }}
|
manifest-path: ${{ env.MANIFEST_PATH }}
|
||||||
@@ -59,7 +59,7 @@ jobs:
|
|||||||
# - `v1`
|
# - `v1`
|
||||||
- name: Set Image Tags
|
- name: Set Image Tags
|
||||||
id: tags
|
id: tags
|
||||||
uses: actions/github-script@v7
|
uses: actions/github-script@v8
|
||||||
with:
|
with:
|
||||||
script: |
|
script: |
|
||||||
const version = '${{ steps.version.outputs.version }}'
|
const version = '${{ steps.version.outputs.version }}'
|
||||||
@@ -110,6 +110,6 @@ jobs:
|
|||||||
|
|
||||||
- name: Create Release
|
- name: Create Release
|
||||||
id: release
|
id: release
|
||||||
uses: issue-ops/releaser@v2
|
uses: issue-ops/releaser@v3
|
||||||
with:
|
with:
|
||||||
tag: v${{ steps.version.outputs.version }}
|
tag: v${{ steps.version.outputs.version }}
|
||||||
|
|||||||
4
.github/workflows/ci.yml
vendored
4
.github/workflows/ci.yml
vendored
@@ -2,6 +2,8 @@ name: Continuous Integration
|
|||||||
|
|
||||||
on:
|
on:
|
||||||
pull_request:
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
@@ -27,7 +29,7 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
id: checkout
|
id: checkout
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v6
|
||||||
|
|
||||||
- name: Setup Docker BuildX
|
- name: Setup Docker BuildX
|
||||||
id: setup-buildx
|
id: setup-buildx
|
||||||
|
|||||||
15
.github/workflows/linter.yml
vendored
15
.github/workflows/linter.yml
vendored
@@ -1,7 +1,14 @@
|
|||||||
|
# This workflow will lint the entire codebase using the
|
||||||
|
# `super-linter/super-linter` action.
|
||||||
|
#
|
||||||
|
# For more information, see the super-linter repository:
|
||||||
|
# https://github.com/super-linter/super-linter
|
||||||
name: Lint Codebase
|
name: Lint Codebase
|
||||||
|
|
||||||
on:
|
on:
|
||||||
pull_request:
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
@@ -19,14 +26,18 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
id: checkout
|
id: checkout
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v6
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
- name: Lint Codebase
|
- name: Lint Codebase
|
||||||
id: super-linter
|
id: super-linter
|
||||||
uses: super-linter/super-linter/slim@v7
|
uses: super-linter/super-linter/slim@v8
|
||||||
env:
|
env:
|
||||||
DEFAULT_BRANCH: main
|
DEFAULT_BRANCH: main
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
LINTER_RULES_PATH: ${{ github.workspace }}
|
||||||
VALIDATE_ALL_CODEBASE: false
|
VALIDATE_ALL_CODEBASE: false
|
||||||
|
VALIDATE_BIOME_FORMAT: false
|
||||||
|
VALIDATE_BIOME_LINT: false
|
||||||
|
VALIDATE_GITHUB_ACTIONS_ZIZMOR: false
|
||||||
|
|||||||
4
.github/workflows/version-check.yml
vendored
4
.github/workflows/version-check.yml
vendored
@@ -27,13 +27,13 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
id: checkout
|
id: checkout
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v6
|
||||||
with:
|
with:
|
||||||
fetch-tags: true
|
fetch-tags: true
|
||||||
|
|
||||||
- name: Check Version
|
- name: Check Version
|
||||||
id: check-version
|
id: check-version
|
||||||
uses: issue-ops/semver@v2
|
uses: issue-ops/semver@v3
|
||||||
with:
|
with:
|
||||||
check-only: true
|
check-only: true
|
||||||
manifest-path: ${{ env.MANIFEST_PATH }}
|
manifest-path: ${{ env.MANIFEST_PATH }}
|
||||||
|
|||||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -21,5 +21,4 @@ Thumbs.db
|
|||||||
|
|
||||||
# IDE files
|
# IDE files
|
||||||
.idea
|
.idea
|
||||||
.vscode
|
|
||||||
*.code-workspace
|
*.code-workspace
|
||||||
|
|||||||
9
.vscode/mcp.json
vendored
Normal file
9
.vscode/mcp.json
vendored
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"servers": {
|
||||||
|
"github": {
|
||||||
|
"url": "https://api.githubcopilot.com/mcp/",
|
||||||
|
"type": "http"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"inputs": []
|
||||||
|
}
|
||||||
15
.vscode/settings.json
vendored
Normal file
15
.vscode/settings.json
vendored
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"github.copilot.chat.reviewSelection.instructions": [
|
||||||
|
{
|
||||||
|
"text": "Review the code changes carefully before accepting them."
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"github.copilot.chat.commitMessageGeneration.instructions": [
|
||||||
|
{
|
||||||
|
"text": "Use conventional commit message format."
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"github.copilot.chat.pullRequestDescriptionGeneration.instructions": [
|
||||||
|
{ "text": "Always include a list of key changes." }
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
# Set the base image to use for subsequent instructions.
|
# Set the base image to use for subsequent instructions.
|
||||||
FROM alpine:3.22
|
FROM alpine:3.23
|
||||||
|
|
||||||
# Set the working directory inside the container.
|
# Set the working directory inside the container.
|
||||||
WORKDIR /usr/src
|
WORKDIR /usr/src
|
||||||
@@ -7,5 +7,12 @@ WORKDIR /usr/src
|
|||||||
# Copy any source file(s) required for the action.
|
# Copy any source file(s) required for the action.
|
||||||
COPY entrypoint.sh .
|
COPY entrypoint.sh .
|
||||||
|
|
||||||
|
# Create a non-root user and switch to it.
|
||||||
|
RUN addgroup -S actiongroup && adduser -S actionuser -G actiongroup && \
|
||||||
|
chown -R actionuser:actiongroup /usr/src && \
|
||||||
|
chmod +x /usr/src/entrypoint.sh
|
||||||
|
|
||||||
|
USER actionuser
|
||||||
|
|
||||||
# Configure the container to be run as an executable.
|
# Configure the container to be run as an executable.
|
||||||
ENTRYPOINT ["/usr/src/entrypoint.sh"]
|
ENTRYPOINT ["/usr/src/entrypoint.sh"]
|
||||||
|
|||||||
11
README.md
11
README.md
@@ -1,8 +1,7 @@
|
|||||||
# Container Prebuilt Action Template
|
# Create a Container Prebuilt Action
|
||||||
|
|
||||||
[](https://github.com/super-linter/super-linter)
|
[](https://github.com/super-linter/super-linter)
|
||||||

|

|
||||||

|
|
||||||
|
|
||||||
Use this template to bootstrap the creation of a container action. :rocket:
|
Use this template to bootstrap the creation of a container action. :rocket:
|
||||||
|
|
||||||
@@ -177,7 +176,7 @@ So, what are you waiting for? Go ahead and start customizing your action!
|
|||||||
Your action is now published! :rocket:
|
Your action is now published! :rocket:
|
||||||
|
|
||||||
For information about versioning your action, see
|
For information about versioning your action, see
|
||||||
[Versioning](https://github.com/actions/toolkit/blob/master/docs/action-versioning.md)
|
[Versioning](https://github.com/actions/toolkit/blob/main/docs/action-versioning.md)
|
||||||
in the GitHub Actions toolkit.
|
in the GitHub Actions toolkit.
|
||||||
|
|
||||||
## Releasing Versions
|
## Releasing Versions
|
||||||
@@ -198,7 +197,7 @@ As part of the pull request, make sure to update the
|
|||||||
|
|
||||||
After testing, you can create version tag(s) that developers can use to
|
After testing, you can create version tag(s) that developers can use to
|
||||||
reference different stable versions of your action. For more information, see
|
reference different stable versions of your action. For more information, see
|
||||||
[Versioning](https://github.com/actions/toolkit/blob/master/docs/action-versioning.md)
|
[Versioning](https://github.com/actions/toolkit/blob/main/docs/action-versioning.md)
|
||||||
in the GitHub Actions toolkit.
|
in the GitHub Actions toolkit.
|
||||||
|
|
||||||
To include the action in a workflow in another repository, you can use the
|
To include the action in a workflow in another repository, you can use the
|
||||||
@@ -209,7 +208,7 @@ hash.
|
|||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
id: checkout
|
id: checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Test Local Action
|
- name: Test Local Action
|
||||||
id: test-action
|
id: test-action
|
||||||
|
|||||||
Reference in New Issue
Block a user