diff --git a/.github/workflows/update-main-readme.yml b/.github/workflows/update-main-readme.yml new file mode 100644 index 000000000..eb0352d6b --- /dev/null +++ b/.github/workflows/update-main-readme.yml @@ -0,0 +1,27 @@ +name: Update main readme +on: + push: + branches: "main" + paths: + - .github/workflows/update-main-readme.yml + pull_request: + paths: + - .github/workflows/update-main-readme.yml + schedule: + # https://crontab.guru/daily + - cron: "0 0 * * *" + workflow_call: + workflow_dispatch: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true +jobs: + update-main-readme: + concurrency: ${{ github.ref }}-write + permissions: + contents: write + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: devcontainers-community/update-collection-readme@v1 + - uses: stefanzweifel/git-auto-commit-action@v4 diff --git a/README.md b/README.md index 1a1cea8e6..c87265eb7 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,20 @@ # Dev Container Features: Self Authoring Template -> This repo provides a starting point and example for creating your own custom [dev container Features](https://containers.dev/implementors/features/), hosted for free on GitHub Container Registry. The example in this repository follows the [dev container Feature distribution specification](https://containers.dev/implementors/features-distribution/). +> This repo provides a starting point and example for creating your own custom [dev container Features](https://containers.dev/implementors/features/), hosted for free on GitHub Container Registry. The example in this repository follows the [dev container Feature distribution specification](https://containers.dev/implementors/features-distribution/). > > To provide feedback to the specification, please leave a comment [on spec issue #70](https://github.com/devcontainers/spec/issues/70). For more broad feedback regarding dev container Features, please see [spec issue #61](https://github.com/devcontainers/spec/issues/61). ## Example Contents + + + +- **My Favorite Color** - A feature to remind you of your favorite color +- **Hello, World!** - A hello world feature + + + + This repository contains a _collection_ of two Features - `hello` and `color`. These Features serve as simple feature implementations. Each sub-section below shows a sample `devcontainer.json` alongside example usage of the Feature. ### `hello` @@ -52,7 +61,7 @@ my favorite color is green ## Repo and Feature Structure -Similar to the [`devcontainers/features`](https://github.com/devcontainers/features) repo, this repository has a `src` folder. Each Feature has its own sub-folder, containing at least a `devcontainer-feature.json` and an entrypoint script `install.sh`. +Similar to the [`devcontainers/features`](https://github.com/devcontainers/features) repo, this repository has a `src` folder. Each Feature has its own sub-folder, containing at least a `devcontainer-feature.json` and an entrypoint script `install.sh`. ``` ├── src @@ -113,13 +122,13 @@ Features are individually versioned by the `version` attribute in a Feature's `d ### Publishing -> NOTE: The Distribution spec can be [found here](https://containers.dev/implementors/features-distribution/). +> NOTE: The Distribution spec can be [found here](https://containers.dev/implementors/features-distribution/). > > While any registry [implementing the OCI Distribution spec](https://github.com/opencontainers/distribution-spec) can be used, this template will leverage GHCR (GitHub Container Registry) as the backing registry. -Features are meant to be easily sharable units of dev container configuration and installation code. +Features are meant to be easily sharable units of dev container configuration and installation code. -This repo contains a **GitHub Action** [workflow](.github/workflows/release.yaml) that will publish each Feature to GHCR. +This repo contains a **GitHub Action** [workflow](.github/workflows/release.yaml) that will publish each Feature to GHCR. *Allow GitHub Actions to create and approve pull requests* should be enabled in the repository's `Settings > Actions > General > Workflow permissions` for auto generation of `src//README.md` per Feature (which merges any existing `src//NOTES.md`).