diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 19e72747..af8f9a52 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -8,7 +8,8 @@ RUN if [ "${NODE_VERSION}" != "none" ]; then su vscode -c "umask 0002 && . /usr/ # [Optional] Uncomment this section to install additional OS packages. # RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \ -# && apt-get -y install --no-install-recommends +# && apt-get -y install --no-install-recommends npm install -g wrangler -# [Optional] Uncomment this line to install global node packages. -# RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && npm install -g " 2>&1 \ No newline at end of file + +# RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && npm install -g wrangler + 2>&1 diff --git a/.devcontainer/base.Dockerfile b/.devcontainer/base.Dockerfile index 9e3296a6..0b3f27e8 100644 --- a/.devcontainer/base.Dockerfile +++ b/.devcontainer/base.Dockerfile @@ -18,9 +18,8 @@ RUN gem install bundler jekyll github-pages ARG NODE_VERSION="none" RUN if [ "${NODE_VERSION}" != "none" ]; then su vscode -c "umask 0002 && . /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1"; fi -# [Optional] Uncomment this section to install additional OS packages. # RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \ -# && apt-get -y install --no-install-recommends +# && apt-get -y install --no-install-recommends npm install -g wrangler -# [Optional] Uncomment this line to install global node packages. -# RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && npm install -g " 2>&1 + +# RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && npm install -g " 2>&1 diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 00000000..dd84ea78 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,38 @@ +--- +name: Bug report +about: Create a report to help us improve +title: '' +labels: '' +assignees: '' + +--- + +**Describe the bug** +A clear and concise description of what the bug is. + +**To Reproduce** +Steps to reproduce the behavior: +1. Go to '...' +2. Click on '....' +3. Scroll down to '....' +4. See error + +**Expected behavior** +A clear and concise description of what you expected to happen. + +**Screenshots** +If applicable, add screenshots to help explain your problem. + +**Desktop (please complete the following information):** + - OS: [e.g. iOS] + - Browser [e.g. chrome, safari] + - Version [e.g. 22] + +**Smartphone (please complete the following information):** + - Device: [e.g. iPhone6] + - OS: [e.g. iOS8.1] + - Browser [e.g. stock browser, safari] + - Version [e.g. 22] + +**Additional context** +Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/custom.md b/.github/ISSUE_TEMPLATE/custom.md new file mode 100644 index 00000000..48d5f81f --- /dev/null +++ b/.github/ISSUE_TEMPLATE/custom.md @@ -0,0 +1,10 @@ +--- +name: Custom issue template +about: Describe this issue template's purpose here. +title: '' +labels: '' +assignees: '' + +--- + + diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 00000000..bbcbbe7d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,20 @@ +--- +name: Feature request +about: Suggest an idea for this project +title: '' +labels: '' +assignees: '' + +--- + +**Is your feature request related to a problem? Please describe.** +A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] + +**Describe the solution you'd like** +A clear and concise description of what you want to happen. + +**Describe alternatives you've considered** +A clear and concise description of any alternative solutions or features you've considered. + +**Additional context** +Add any other context or screenshots about the feature request here. diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 00000000..822e4a56 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates + +version: 2 +updates: + - package-ecosystem: "" # See documentation for possible values + directory: "/src" # Location of package manifests + schedule: + interval: "weekly" diff --git a/.github/workflows/hadolint.yml b/.github/workflows/hadolint.yml new file mode 100644 index 00000000..f57b1715 --- /dev/null +++ b/.github/workflows/hadolint.yml @@ -0,0 +1,47 @@ +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. +# hadoint is a Dockerfile linter written in Haskell +# that helps you build best practice Docker images. +# More details at https://github.com/hadolint/hadolint + +name: Hadolint + +on: + push: + branches: [ "gh-pages" ] + pull_request: + # The branches below must be a subset of the branches above + branches: [ "gh-pages" ] + schedule: + - cron: '23 5 * * 5' + +permissions: + contents: read + +jobs: + hadolint: + name: Run hadolint scanning + runs-on: ubuntu-latest + permissions: + contents: read # for actions/checkout to fetch code + security-events: write # for github/codeql-action/upload-sarif to upload SARIF results + actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status + steps: + - name: Checkout code + uses: actions/checkout@v3 + + - name: Run hadolint + uses: hadolint/hadolint-action@f988afea3da57ee48710a9795b6bb677cc901183 + with: + dockerfile: ./Dockerfile + format: sarif + output-file: hadolint-results.sarif + no-fail: true + + - name: Upload analysis results to GitHub + uses: github/codeql-action/upload-sarif@v2 + with: + sarif_file: hadolint-results.sarif + wait-for-processing: true diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml new file mode 100644 index 00000000..d5eb8a69 --- /dev/null +++ b/.github/workflows/jekyll.yml @@ -0,0 +1,63 @@ +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. + +# Sample workflow for building and deploying a Jekyll site to GitHub Pages +name: Deploy Jekyll site to Pages + +on: + # Runs on pushes targeting the default branch + push: + branches: ["gh-pages"] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: read + pages: write + id-token: write + +# Allow one concurrent deployment +concurrency: + group: "pages" + cancel-in-progress: true + +jobs: + # Build job + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + - name: Setup Ruby + uses: ruby/setup-ruby@ee2113536afb7f793eed4ce60e8d3b26db912da4 # v1.127.0 + with: + ruby-version: '3.0' # Not needed with a .ruby-version file + bundler-cache: true # runs 'bundle install' and caches installed gems automatically + cache-version: 0 # Increment this number if you need to re-download cached gems + - name: Setup Pages + id: pages + uses: actions/configure-pages@v3 + - name: Build with Jekyll + # Outputs to the './_site' directory by default + run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}" + env: + JEKYLL_ENV: production + - name: Upload artifact + # Automatically uploads an artifact from the './_site' directory by default + uses: actions/upload-pages-artifact@v1 + + # Deployment job + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v1 diff --git a/.github/workflows/label.yml b/.github/workflows/label.yml new file mode 100644 index 00000000..46135690 --- /dev/null +++ b/.github/workflows/label.yml @@ -0,0 +1,22 @@ +# This workflow will triage pull requests and apply a label based on the +# paths that are modified in the pull request. +# +# To use this workflow, you will need to set up a .github/labeler.yml +# file with configuration. For more information, see: +# https://github.com/actions/labeler + +name: Labeler +on: [pull_request_target] + +jobs: + label: + + runs-on: ubuntu-latest + permissions: + contents: read + pull-requests: write + + steps: + - uses: actions/labeler@v4 + with: + repo-token: "${{ secrets.GITHUB_TOKEN }}" diff --git a/.github/workflows/snyk-container.yml b/.github/workflows/snyk-container.yml new file mode 100644 index 00000000..dba716c8 --- /dev/null +++ b/.github/workflows/snyk-container.yml @@ -0,0 +1,55 @@ +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. + +# A sample workflow which checks out the code, builds a container +# image using Docker and scans that image for vulnerabilities using +# Snyk. The results are then uploaded to GitHub Security Code Scanning +# +# For more examples, including how to limit scans to only high-severity +# issues, monitor images for newly disclosed vulnerabilities in Snyk and +# fail PR checks for new vulnerabilities, see https://github.com/snyk/actions/ + +name: Snyk Container + +on: + push: + branches: [ "gh-pages", *sqlserver, main ] + pull_request: + # The branches below must be a subset of the branches above + branches: [ "gh-pages" ] + schedule: + - cron: '16 19 * * 3' + +permissions: + contents: read + +jobs: + snyk: + permissions: + contents: read # for actions/checkout to fetch code + security-events: write # for github/codeql-action/upload-sarif to upload SARIF results + actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Build a Docker image + run: docker build -t your/image-to-test . + - name: Run Snyk to check Docker image for vulnerabilities + # Snyk can be used to break the build when it detects vulnerabilities. + # In this case we want to upload the issues to GitHub Code Scanning + continue-on-error: true + uses: snyk/actions/docker@14818c4695ecc4045f33c9cee9e795a788711ca4 + env: + # In order to use the Snyk Action you will need to have a Snyk API token. + # More details in https://github.com/snyk/actions#getting-your-snyk-token + # or you can signup for free at https://snyk.io/login + SNYK_TOKEN: ${{ secrets.SNYK_TOKEN }} + with: + image: your/image-to-test + args: --file=Dockerfile + - name: Upload result to GitHub Code Scanning + uses: github/codeql-action/upload-sarif@v2 + with: + sarif_file: snyk.sarif diff --git a/CNAME b/CNAME index 5e77b88a..a67d0c9b 100644 --- a/CNAME +++ b/CNAME @@ -1 +1 @@ -containers.dev \ No newline at end of file +igecloud.dev/devcontainers diff --git a/CODEOWNERS b/CODEOWNERS index f9ed0b93..f889e7dc 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -1 +1 @@ -* @devcontainers/maintainers +* @igeclouds/maintainers diff --git a/Gemfile b/Gemfile index 29414965..a2265a7f 100644 --- a/Gemfile +++ b/Gemfile @@ -8,8 +8,8 @@ gem "jekyll", "3.6.2" # If you have any plugins, put them here! group :jekyll_plugins do - gem "jemoji" - gem "github-pages" + gem "jemoji", ">= 0.10.0" + gem "github-pages", ">= 203" gem "jekyll-remote-theme" end diff --git a/README.md b/README.md index 5b35dcb2..257e72c8 100644 --- a/README.md +++ b/README.md @@ -1,35 +1,35 @@ -# Development Containers Website +# Developers & Designers Resource Repository This repo holds the website for the [Development Containers Specification](https://github.com/devcontainers/spec). -You may view the site at [containers.dev](https://containers.dev). +You may view the site at [containers.dev](https://igecloud.dev). ## Building If you'd like to build and preview the site yourself, we make it as smooth as possible through a dev container in this repo! -### Dev container +### Dev & Design Container You may build GitHub Pages sites with [Jekyll](https://jekyllrb.com/), which is a Ruby gem. You could manually install these tools on your machine, or you can easily get started with the setup you already need through a dev container! -You may review this repo's dev container in the [`.devcontainer`](https://github.com/devcontainers/containers.dev/tree/gh-pages/.devcontainer) folder. +You may review this repo's dev container in the [`.devcontainer`](https://github.com/igeclouds/igeclouds.dev/tree/gh-pages/.devcontainer) folder. It is from this [Jekyll definition](https://github.com/microsoft/vscode-dev-containers/tree/main/containers/jekyll). ### Steps to build and run * Clone or open this repo in the dev container-supporting editor of your choosing. - * You may review supporting tools and services [here](https://containers.dev/supporting). + * You may review supporting tools and services [here](https://igeclouds.dev/supporting). * Reopen this repo in the dev container, so that the container builds and you may develop inside it using the included tools. * Once the dev container finishes building, execute the following command in your dev container to start the site: `bundle exec jekyll serve` -* Check out the site! http://localhost:4000/containers.dev/ +* Check out the site! http://localhost:4000/igeclouds.dev/ -## Feedback and contributing +## Feedback and contributing If you'd like to provide feedback on or contribute to the dev containers website, please feel free to open an issue or PR in this repo. -For issues on and contributions to the dev container specification itself, please visit the [Dev Containers Spec repo](https://github.com/devcontainers/spec). +For issues on and contributions to the dev container specification itself, please visit the [Dev Containers Spec repo (https://github.com/igeclouds/devconspec). ## License -License for this repository: https://github.com/devcontainers/containers.dev/blob/gh-pages/LICENSE. +License for this repository: https://github.com/igeclouds/devcontainers/blob/gh-pages/LICENSE. diff --git a/_config.yml b/_config.yml index 855811df..74bfffa7 100644 --- a/_config.yml +++ b/_config.yml @@ -1,12 +1,12 @@ # Site settings -title: Development containers +title: Internet Governance Experts description: > Development containers documentation and specification page. # baseurl: / # the subpath of your site, e.g. /blog/ -url: https://devcontainers.github.io # the base hostname & protocol for your site -git_address: https://github.com/devcontainers/devcontainers.github.io -git_edit_address: https://github.com/devcontainers/devcontainers.github.io/settings/pages/blob/gh-pages +url: https://igecloud.dev/devcontainers +git_address: https://github.com/igeclouds/devcontainers.github.io +git_edit_address: https://github.com/igeclouds/devcontainers.github.io/settings/pages/blob/gh-pages # Build settings markdown: kramdown @@ -25,7 +25,7 @@ exclude: - README.md - resources -timezone: Europe/Zurich +timezone: Europe/London defaults: - scope: @@ -33,7 +33,7 @@ defaults: type: posts values: layout: post - sectionid: guide + sectionid: kubernetes - scope: path: _docs @@ -51,13 +51,13 @@ defaults: layout: implementors sectionid: implementors -collections: +kubernetes: docs: - permalink: /:collection/:path/ + permalink: /:kubernetes/:path/ output: true posts: - permalink: /guide/:title + permalink: /kubernetes/:title output: true implementors: - permalink: /:collection/:path/ + permalink: /:kubernetes/:path/ output: true diff --git a/_data/specification-toc.yml b/_data/specification-toc.yml index 5f034b58..e62ec523 100644 --- a/_data/specification-toc.yml +++ b/_data/specification-toc.yml @@ -1,4 +1,4 @@ -- title: Development Containers +- title: Development & Design Containers children: - title: Base Protocol anchor: Base_Protocol @@ -214,4 +214,4 @@ - title: Variable anchor: Types_Variable - title: VariablePresentationHint - anchor: Types_VariablePresentationHint \ No newline at end of file + anchor: Types_VariablePresentationHint diff --git a/_includes/footer.html b/_includes/footer.html index 63bb8bd7..f30654c8 100644 --- a/_includes/footer.html +++ b/_includes/footer.html @@ -15,7 +15,7 @@ Star
  • - Watch + Watch
  • @@ -27,10 +27,10 @@
  • diff --git a/collections.html b/collections.html deleted file mode 100644 index 205688e5..00000000 --- a/collections.html +++ /dev/null @@ -1,29 +0,0 @@ ---- -title: Collections -layout: table -sectionid: collection-index ---- - -

    Collections

    -

    - This list below contains pointers to official and community-contributed Dev Container assets, including Features and Templates. - Collections on this list are continuously crawled for liveness, and can be presented in UX of Dev Container-supporting tools - (i.e. it will be presented in the GitHub Codespaces and VS Code Dev Containers UX). -

    - -

    - To add your own collection to this list, please create a PR editing this yaml file. -

    - - Name - Maintainer - Repository - - -{% for c in site.data.collection-index %} - - {{ c.name }} - {{ c.maintainer | strip_html }} - {{ c.repository | strip_html }} - -{% endfor %} diff --git a/guides.html b/guides.html index 6234d1d0..7c8ef2df 100644 --- a/guides.html +++ b/guides.html @@ -1,6 +1,6 @@ --- layout: singlePage -title: Dev Container Guides +title: IGE Cloud Dev Container Guides --- {% for post in site.posts %} diff --git a/index.html b/index.html index 5c901c91..39ec5b1e 100644 --- a/index.html +++ b/index.html @@ -8,7 +8,7 @@
    -

    Development Containers

    +

    Development & Design Containers

    An open specification for enriching containers with development specific content and settings. @@ -16,7 +16,7 @@

    Development Containers


    - Star
    @@ -61,7 +61,7 @@

    Gear cogs

    Gear cogs

    -

    Supporting Tools

    +

    Supporting Tools

    A variety of tools and services support this standard.