Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/the-nefarious-developer/devcontainer-templates
A set of development container templates that can be used for SAP BTP development with Cloud Application Programming Model projects in Visual Studio Code
https://github.com/the-nefarious-developer/devcontainer-templates
capire cloudfoundry devcontainer ghcr-hosted ghcr-image sap sap-btp sap-cap
Last synced: 7 days ago
JSON representation
A set of development container templates that can be used for SAP BTP development with Cloud Application Programming Model projects in Visual Studio Code
- Host: GitHub
- URL: https://github.com/the-nefarious-developer/devcontainer-templates
- Owner: The-Nefarious-Developer
- License: mit
- Created: 2024-10-12T07:42:45.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-10-18T05:59:12.000Z (3 months ago)
- Last Synced: 2024-10-18T09:30:37.690Z (3 months ago)
- Topics: capire, cloudfoundry, devcontainer, ghcr-hosted, ghcr-image, sap, sap-btp, sap-cap
- Language: Shell
- Homepage:
- Size: 75.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Nefarious Development Container Templates
[![Release Devcontainer Templates](https://github.com/The-Nefarious-Developer/devcontainer-templates/actions/workflows/release.yaml/badge.svg)](https://github.com/The-Nefarious-Developer/devcontainer-templates/actions/workflows/release.yaml)
[![Update Documentation](https://github.com/The-Nefarious-Developer/devcontainer-templates/actions/workflows/update-documentation.yaml/badge.svg)](https://github.com/The-Nefarious-Developer/devcontainer-templates/actions/workflows/update-documentation.yaml)
[![Test Latest Updated Templates](https://github.com/The-Nefarious-Developer/devcontainer-templates/actions/workflows/test-pr.yaml/badge.svg)](https://github.com/The-Nefarious-Developer/devcontainer-templates/actions/workflows/test-pr.yaml)
[![semantic-release: angular](https://img.shields.io/badge/semantic--release-angular-e10079?logo=semantic-release)](https://github.com/semantic-release/semantic-release)This repository provides a set of ready-to-use devcontainer templates that you can integrate directly into your Visual Studio Code environment. These templates are particularly useful for SAP developers who want to set up a consistent development environment across different projects without hassle.
> The devcontainer templates created from this project make use of the Docker container images provided through the [`devcontainer-images`](https://github.com/The-Nefarious-Developer/devcontainer-images) repository.
If you have any question, suggestion or request regarding what this repository can offer, you can use this [discussion area](https://github.com/orgs/The-Nefarious-Developer/discussions).
## Available Templates
Ths repository generates the following devcontainer templates:
| Template | Image |
|---------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| sap-cap-javascript-node | [ghcr.io/the-nefarious-developer/sap-cap-javascript-node:{VERSION}](https://github.com/The-Nefarious-Developer/devcontainer-images/pkgs/container/sap-cap-javascript-node) |
| sap-cap-typescript-node | [ghcr.io/the-nefarious-developer/sap-cap-typescript-node:{VERSION}](https://github.com/The-Nefarious-Developer/devcontainer-images/pkgs/container/sap-cap-typescript-node) |## Content
- [`src`](src) - Contains reusable dev container templates.
- [`test`](test) - Contains the test suite for each provided template.## Prerequisites
To use the devcontainer templates provided in this repository, you will need:
- [Docker](https://www.docker.com/get-started) installed on your system.
- [Visual Studio Code](https://code.visualstudio.com/) with the [Dev Containers extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers).## How it works
The directories inside the [`src`](src) folder will contain the files that will compose the templates to be created.
Each template folder will have the following structure:
- **.devcontainer**: Folder which is going to contain the `devcontainer.json` with properties, dependencies and the container image to be referenced by the template.
- **devcontainer-template.json** Configuration file that define key metadata and attributes for the container environment.Whenever a change in the template happens, the `update-documentation.yaml` pipeline will be triggered and a new pull request will be created to update the `README.md` file inside each template directory. This new document will be composed by metadata defined in the `devcontainer-template.json` and the content described in the `NOTES.md` file.
## Testing
Each template needs to have a test implementation. The testing operations in this project follows the harness test strategy applied at their own [container images](https://github.com/The-Nefarious-Developer/devcontainer-images), which can be leveraged in case of new template implementations.
> **Note:** The lack of test implementation might cause the CI/CD pipeline to fail.
### Testing locally
To test the templates locally, the environment variable `VARIANT` need to be set prior to the bash file execution.
Template for command to run the test locally:
```
VARIANT= test//test.sh
```The [`package.json`](package.json) file contains an example of local testing through the script `test:local`.
## How can I contribute?
Contributions are welcome! Here's how you can get involved:
1. **Report Issues:** Found a bug or have a feature request? [Open an issue](https://github.com/The-Nefarious-Developer/devcontainer-templates/issues).
2. **Submit Pull Requests:** Fork the repository, create a new branch, make your changes, and submit a PR.
3. **Improve Documentation:** Help us improve the README or add examples to make setup easier.
4. **Test & Feedback:** Try the devcontainer template and give us feedback to improve them.Please follow the [contribution guidelines](CONTRIBUTING.md) for more details.
## References
The development container images used by these templates can be found at [devcontainer-images](https://github.com/The-Nefarious-Developer/devcontainer-images) repository.
These templates were created following the guidelines provided through the [devcontainers/template-starter](https://github.com/devcontainers/template-starter) and [devcontainers/templates](https://github.com/devcontainers/templates).
## License
Copyright (c) 2024 The Nefarious Developer
Licensed under the MIT License. See [LICENSE](LICENSE).