mirror of
https://github.com/actions/container-action.git
synced 2025-07-30 09:37:41 +00:00
Merge pull request #37 from actions/ncalteen/copilot
Add Copilot Configuration
This commit is contained in:
commit
7b93064372
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
|
6
.github/linters/.checkov.yaml
vendored
6
.github/linters/.checkov.yaml
vendored
@ -1,6 +0,0 @@
|
|||||||
quiet: true
|
|
||||||
skip-check:
|
|
||||||
# Ensure that HEALTHCHECK instructions have been added to container images
|
|
||||||
- CKV_DOCKER_2
|
|
||||||
# Ensure that a user for the container has been created
|
|
||||||
- CKV_DOCKER_3
|
|
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 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
|
2
.github/workflows/ci.yml
vendored
2
.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
|
||||||
|
8
.github/workflows/linter.yml
vendored
8
.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
|
||||||
@ -29,4 +36,5 @@ jobs:
|
|||||||
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: true
|
VALIDATE_ALL_CODEBASE: true
|
||||||
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -21,5 +21,4 @@ Thumbs.db
|
|||||||
|
|
||||||
# IDE files
|
# IDE files
|
||||||
.idea
|
.idea
|
||||||
.vscode
|
|
||||||
*.code-workspace
|
*.code-workspace
|
||||||
|
@ -1,7 +1,13 @@
|
|||||||
|
# See: https://github.com/DavidAnson/markdownlint
|
||||||
|
|
||||||
# Unordered list style
|
# Unordered list style
|
||||||
MD004:
|
MD004:
|
||||||
style: dash
|
style: dash
|
||||||
|
|
||||||
|
# Disable line length for tables
|
||||||
|
MD013:
|
||||||
|
tables: false
|
||||||
|
|
||||||
# Ordered list item prefix
|
# Ordered list item prefix
|
||||||
MD029:
|
MD029:
|
||||||
style: one
|
style: one
|
@ -1,16 +0,0 @@
|
|||||||
{
|
|
||||||
"printWidth": 80,
|
|
||||||
"tabWidth": 2,
|
|
||||||
"useTabs": false,
|
|
||||||
"semi": false,
|
|
||||||
"singleQuote": true,
|
|
||||||
"quoteProps": "as-needed",
|
|
||||||
"jsxSingleQuote": false,
|
|
||||||
"trailingComma": "none",
|
|
||||||
"bracketSpacing": true,
|
|
||||||
"bracketSameLine": true,
|
|
||||||
"arrowParens": "avoid",
|
|
||||||
"proseWrap": "always",
|
|
||||||
"htmlWhitespaceSensitivity": "css",
|
|
||||||
"endOfLine": "lf"
|
|
||||||
}
|
|
16
.prettierrc.yml
Normal file
16
.prettierrc.yml
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
# See: https://prettier.io/docs/en/configuration
|
||||||
|
|
||||||
|
printWidth: 80
|
||||||
|
tabWidth: 2
|
||||||
|
useTabs: false
|
||||||
|
semi: false
|
||||||
|
singleQuote: true
|
||||||
|
quoteProps: as-needed
|
||||||
|
jsxSingleQuote: false
|
||||||
|
trailingComma: none
|
||||||
|
bracketSpacing: true
|
||||||
|
bracketSameLine: true
|
||||||
|
arrowParens: always
|
||||||
|
proseWrap: always
|
||||||
|
htmlWhitespaceSensitivity: css
|
||||||
|
endOfLine: lf
|
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,3 +1,5 @@
|
|||||||
|
# See: https://yamllint.readthedocs.io/en/stable/
|
||||||
|
|
||||||
rules:
|
rules:
|
||||||
document-end: disable
|
document-end: disable
|
||||||
document-start:
|
document-start:
|
||||||
@ -8,3 +10,5 @@ rules:
|
|||||||
max: 80
|
max: 80
|
||||||
allow-non-breakable-words: true
|
allow-non-breakable-words: true
|
||||||
allow-non-breakable-inline-mappings: true
|
allow-non-breakable-inline-mappings: true
|
||||||
|
ignore:
|
||||||
|
- .licenses/
|
@ -1,3 +1,7 @@
|
|||||||
# Repository CODEOWNERS
|
############################################################################
|
||||||
|
# Repository CODEOWNERS #
|
||||||
|
# Order is important! The last matching pattern takes the most precedence. #
|
||||||
|
############################################################################
|
||||||
|
|
||||||
|
# Default owners, unless a later match takes precedence.
|
||||||
* @actions/actions-oss-maintainers
|
* @actions/actions-oss-maintainers
|
||||||
|
23
README.md
23
README.md
@ -1,23 +1,16 @@
|
|||||||
# Container Action Template
|
# Create a Container Action
|
||||||
|
|
||||||
[](https://github.com/super-linter/super-linter)
|
[](https://github.com/super-linter/super-linter)
|
||||||
|
[](https://github.com/actions/container-action/actions/workflows/check-dist.yml)
|
||||||

|

|
||||||
|
[](https://github.com/actions/container-action/actions/workflows/codeql-analysis.yml)
|
||||||
|
[](./badges/coverage.svg)
|
||||||
|
|
||||||
Use this template to bootstrap the creation of a container action. :rocket:
|
Use this template to bootstrap the creation of a container action. :rocket:
|
||||||
|
|
||||||
This template includes compilation support, tests, a validation workflow,
|
This template includes compilation support, tests, a validation workflow,
|
||||||
publishing, and versioning guidance.
|
publishing, and versioning guidance.
|
||||||
|
|
||||||
If you are new, there's also a simpler introduction in the
|
|
||||||
[Hello World Docker Action](https://github.com/actions/hello-world-docker-action)
|
|
||||||
repository.
|
|
||||||
|
|
||||||
If you would like to use the
|
|
||||||
[GitHub Actions Toolkit](https://github.com/actions/toolkit) in your container
|
|
||||||
action, see the
|
|
||||||
[Container Toolkit Action](https://github.com/actions/container-toolkit-action)
|
|
||||||
repository.
|
|
||||||
|
|
||||||
## Create Your Own Action
|
## Create Your Own Action
|
||||||
|
|
||||||
To create your own action, you can use this repository as a template! Just
|
To create your own action, you can use this repository as a template! Just
|
||||||
@ -166,7 +159,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.
|
||||||
|
|
||||||
## Validate the Action
|
## Validate the Action
|
||||||
@ -179,7 +172,7 @@ action in the same repository.
|
|||||||
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
|
||||||
@ -199,7 +192,7 @@ For example workflow runs, check out 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
|
||||||
@ -210,7 +203,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
|
||||||
|
17
action.yml
17
action.yml
@ -1,18 +1,23 @@
|
|||||||
name: 'The name of your action here'
|
name: The name of your action here
|
||||||
description: 'Provide a description here'
|
description: Provide a description here
|
||||||
author: 'Your name or organization here'
|
author: Your name or organization here
|
||||||
|
|
||||||
|
# Add your action's branding here. This will appear on the GitHub Marketplace.
|
||||||
|
branding:
|
||||||
|
icon: heart
|
||||||
|
color: red
|
||||||
|
|
||||||
# Define your inputs here.
|
# Define your inputs here.
|
||||||
inputs:
|
inputs:
|
||||||
who-to-greet:
|
who-to-greet:
|
||||||
description: 'Your input description here'
|
description: Your input description here
|
||||||
required: true
|
required: true
|
||||||
default: 'World'
|
default: World
|
||||||
|
|
||||||
# Define your outputs here.
|
# Define your outputs here.
|
||||||
outputs:
|
outputs:
|
||||||
greeting:
|
greeting:
|
||||||
description: 'Your output description here'
|
description: Your output description here
|
||||||
|
|
||||||
runs:
|
runs:
|
||||||
using: docker
|
using: docker
|
||||||
|
Loading…
x
Reference in New Issue
Block a user