diff --git a/README.md b/README.md index d57a14b..120ed78 100644 --- a/README.md +++ b/README.md @@ -7,24 +7,30 @@ language for writing reusable CI code. However, Python being equally popular and capable, usage of JS/TS might be bypassed, with some caveats. This repository gathers reusable CI tooling for testing, packaging and distributing Python projects and documentation. + ## Context -GitHub Actions supports four types of reusable code: +GitHub Actions supports five procedures to reuse code: -- JavaScript Action. +- JavaScript Action: - [docs.github.com: actions/creating-actions/creating-a-javascript-action](https://docs.github.com/en/actions/creating-actions/creating-a-javascript-action) -- Container Action. +- Container Action: - [docs.github.com: actions/creating-actions/creating-a-docker-container-action](https://docs.github.com/en/actions/creating-actions/creating-a-docker-container-action) -- Composite Action. +- Container Step: + - [docs.github.com: actions/learn-github-actions/workflow-syntax-for-github-actions#example-using-a-docker-public-registry-action](https://docs.github.com/en/actions/learn-github-actions/workflow-syntax-for-github-actions#example-using-a-docker-public-registry-action) + - [docs.github.com: actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idstepswithargs](https://docs.github.com/en/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idstepswithargs) +- Composite Action: - [docs.github.com: actions/creating-actions/creating-a-composite-action](https://docs.github.com/en/actions/creating-actions/creating-a-composite-action) - [github.blog/changelog: 2020-08-07-github-actions-composite-run-steps](https://github.blog/changelog/2020-08-07-github-actions-composite-run-steps/) - [github.blog/changelog: 2021-08-25-github-actions-reduce-duplication-with-action-compositio](https://github.blog/changelog/2021-08-25-github-actions-reduce-duplication-with-action-composition/) -- Reusable Workflows. +- Reusable Workflow: - [docs.github.com: actions/learn-github-actions/reusing-workflows](https://docs.github.com/en/actions/learn-github-actions/reusing-workflows) - [github.blog/changelog: 2021-10-05-github-actions-dry-your-github-actions-configuration-by-reusing-workflows](https://github.blog/changelog/2021-10-05-github-actions-dry-your-github-actions-configuration-by-reusing-workflows/) -Leaving JavaScript and Container Actions aside, the main differences between Composite Actions and Reusable Workflows -are the following: +Container Actions and Container Steps are almost equivalent: Actions use a configuration file (`action.yml`), while +Steps do not. +Leaving JavaScript and Container Actions and Steps aside, the main differences between Composite Actions and Reusable +Workflows are the following: - Composite Actions can be executed from a remote/external path or from the checked out branch, and from any location. However, Reusable Workflows can only be used through a remote/external path (`{owner}/{repo}/{path}/{filename}@{ref}`), @@ -74,6 +80,7 @@ It allows using the `post` feature with scripts written in bash, python or any o the environment. See: [actions/runner#1478](https://github.com/actions/runner/issues/1478). + ## Reusable workflows This repository provides 10+ Reusable Workflows based on the CI pipelines of the repos in this organisation, @@ -150,19 +157,23 @@ Find further usage cases in the following list of projects: - [VHDL/pyVHDLModel](https://github.com/VHDL/pyVHDLModel/tree/main/.github/workflows) +## References + +- [hdl/containers#48](https://github.com/hdl/containers/issues/48) + + ## Contributors * [Patrick Lehmann](https://GitHub.com/Paebbels) * [Unai Martinez-Corral](https://GitHub.com/umarcor) (Maintainer) -* [and more...](https://GitHub.com/pyTooling/Actions/graphs/contributors) +* [and more...](https://GitHub.com/pyTooling/Actions/graphs/contributors) ## License -This Python package (source code) licensed under [Apache License 2.0](LICENSE.md). +This Python package (source code) licensed under [Apache License 2.0](LICENSE.md). The accompanying documentation is licensed under [Creative Commons - Attribution 4.0 (CC-BY 4.0)](doc/Doc-License.rst). +--- -------------------------- - -SPDX-License-Identifier: Apache-2.0 \ No newline at end of file +SPDX-License-Identifier: Apache-2.0