diff --git a/.expeditor/config.yml b/.expeditor/config.yml index 41ecd80..b0bb5e2 100644 --- a/.expeditor/config.yml +++ b/.expeditor/config.yml @@ -1,5 +1,6 @@ # Documentation available at https://expeditor.chef.io/docs/getting-started/ --- + # Slack channel in Chef Software slack to send notifications about build failures, etc slack: notify_channel: sustaining-notify @@ -42,3 +43,8 @@ promote: actions: - built_in:rollover_changelog - built_in:publish_rubygems + +pipelines: + - verify: + description: Pull Request validation tests + public: true diff --git a/.expeditor/run_linux_tests.sh b/.expeditor/run_linux_tests.sh new file mode 100755 index 0000000..4c14c80 --- /dev/null +++ b/.expeditor/run_linux_tests.sh @@ -0,0 +1,53 @@ +#!/bin/bash +# +# This script runs a passed in command, but first setups up the bundler caching on the repo + +set -ue + +export USER="root" + +echo "--- dependencies" +export LANG=C.UTF-8 LANGUAGE=C.UTF-8 +S3_URL="s3://public-cd-buildkite-cache/${BUILDKITE_PIPELINE_SLUG}/${BUILDKITE_LABEL}" + +pull_s3_file() { + aws s3 cp "${S3_URL}/$1" "$1" || echo "Could not pull $1 from S3" +} + +push_s3_file() { + if [ -f "$1" ]; then + aws s3 cp "$1" "${S3_URL}/$1" || echo "Could not push $1 to S3 for caching." + fi +} + +apt-get update -y +apt-get install awscli -y + +echo "--- bundle install" +pull_s3_file "bundle.tar.gz" +pull_s3_file "bundle.sha256" + +if [ -f bundle.tar.gz ]; then + tar -xzf bundle.tar.gz +fi + +if [ -n "${RESET_BUNDLE_CACHE:-}" ]; then + rm bundle.sha256 +fi + +bundle config --local path vendor/bundle +bundle install --jobs=7 --retry=3 + +echo "--- bundle cache" +if test -f bundle.sha256 && shasum --check bundle.sha256 --status; then + echo "Bundled gems have not changed. Skipping upload to s3" +else + echo "Bundled gems have changed. Uploading to s3" + shasum -a 256 Gemfile.lock > bundle.sha256 + tar -czf bundle.tar.gz vendor/ + push_s3_file bundle.tar.gz + push_s3_file bundle.sha256 +fi + +echo "+++ bundle exec task" +bundle exec $1 diff --git a/.expeditor/verify.pipeline.yml b/.expeditor/verify.pipeline.yml new file mode 100644 index 0000000..4b2bc8c --- /dev/null +++ b/.expeditor/verify.pipeline.yml @@ -0,0 +1,25 @@ +--- + +steps: + +- label: run-specs-ruby-2.5 + command: + - .expeditor/run_linux_tests.sh rake + expeditor: + executor: + docker: + image: ruby:2.5-buster +- label: run-specs-ruby-2.6 + command: + - .expeditor/run_linux_tests.sh rake + expeditor: + executor: + docker: + image: ruby:2.6-buster +- label: run-specs-ruby-2.7 + command: + - .expeditor/run_linux_tests.sh rake + expeditor: + executor: + docker: + image: ruby:2.7-buster \ No newline at end of file diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 3a622a8..b7f030f 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,7 +1,5 @@ # Order is important. The last matching pattern has the most precedence. -* @chef/chef-vault-maintainers -.expeditor/** @chef/jex-team -README.md @chef/docs-team -RELEASE_NOTES.md @chef/docs-team -.github/ISSUE_TEMPLATE/** @chef/docs-team +* @chef/chef-vault-maintainers +.expeditor/ @chef/jex-team +*.md @chef/docs-team diff --git a/.github/ISSUE_TEMPLATE/BUG_TEMPLATE.md b/.github/ISSUE_TEMPLATE/BUG_TEMPLATE.md index f28915b..87ac9b4 100644 --- a/.github/ISSUE_TEMPLATE/BUG_TEMPLATE.md +++ b/.github/ISSUE_TEMPLATE/BUG_TEMPLATE.md @@ -1,7 +1,7 @@ --- name: � Bug Report about: If something isn't working as expected �. -labels: "Status: Untriaged" +labels: "Status: Untriaged, Type: Bug" --- # Version: diff --git a/.github/ISSUE_TEMPLATE/DESIGN_PROPOSAL.md b/.github/ISSUE_TEMPLATE/DESIGN_PROPOSAL.md index 9f4a958..9508b09 100644 --- a/.github/ISSUE_TEMPLATE/DESIGN_PROPOSAL.md +++ b/.github/ISSUE_TEMPLATE/DESIGN_PROPOSAL.md @@ -1,7 +1,7 @@ --- name: Design Proposal about: I have a significant change I would like to propose and discuss before starting -labels: "Status: Untriaged" +labels: "Status: Untriaged, Type: Design Proposal" --- ### When a Change Needs a Design Proposal diff --git a/.github/ISSUE_TEMPLATE/ENHANCEMENT_REQUEST_TEMPLATE.md b/.github/ISSUE_TEMPLATE/ENHANCEMENT_REQUEST_TEMPLATE.md index 65bf5a0..0cf83a0 100644 --- a/.github/ISSUE_TEMPLATE/ENHANCEMENT_REQUEST_TEMPLATE.md +++ b/.github/ISSUE_TEMPLATE/ENHANCEMENT_REQUEST_TEMPLATE.md @@ -4,14 +4,14 @@ about: I have a suggestion (and may want to implement it 🙂)! labels: "Status: Untriaged" --- -### Describe the Enhancement: +### Describe the Enhancement -### Describe the Need: +### Describe the Need ### Current Alternative -### Can We Help You Implement This?: +### Can We Help You Implement This? diff --git a/.github/ISSUE_TEMPLATE/SUPPORT_QUESTION.md b/.github/ISSUE_TEMPLATE/SUPPORT_QUESTION.md index 68c5664..80435f8 100644 --- a/.github/ISSUE_TEMPLATE/SUPPORT_QUESTION.md +++ b/.github/ISSUE_TEMPLATE/SUPPORT_QUESTION.md @@ -5,8 +5,7 @@ about: If you have a question 💬, please check out our Slack! We use GitHub issues to track bugs and feature requests. If you need help please post to our Mailing List or join the Chef Community Slack. - * Chef Community Slack at http://community-slack.chef.io/. - * Chef Mailing List https://discourse.chef.io/ - +* Chef Community Slack at +* Chef Mailing List Support issues opened here will be closed and redirected to Slack or Discourse. diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 0df03f8..0000000 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,15 +0,0 @@ -### Description - -[Please describe what this change achieves] - -### Issues Resolved - -[List any existing issues this PR resolves, or any Discourse or -StackOverflow discussions that are relevant] - -### Check List - -- [ ] New functionality includes tests -- [ ] All tests pass -- [ ] All commits have been signed-off for the Developer Certificate of Origin. See -- [ ] PR title is a worthy inclusion in the CHANGELOG \ No newline at end of file diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index a82191e..0000000 --- a/.travis.yml +++ /dev/null @@ -1,19 +0,0 @@ -language: ruby -cache: bundler - -matrix: - include: - - rvm: 2.3.7 - - rvm: 2.4.4 - - rvm: 2.5.1 - - rvm: ruby-head - allow_failures: - - rvm: ruby-head - -branches: - only: - - master - -bundler_args: --without docs - -script: bundle exec rake diff --git a/appveyor.yml b/appveyor.yml deleted file mode 100644 index 19f2aac..0000000 --- a/appveyor.yml +++ /dev/null @@ -1,32 +0,0 @@ -version: "master-{build}" - -os: Windows Server 2012 R2 -platform: - - x64 - -clone_depth: 1 -skip_tags: true -skip_branch_with_pr: true -branches: - only: - - master - -# caching vendor/bundle appears to break horribly in the face of gems checked out of git -# cache: -# - vendor/bundle - -install: - - ps: iex (irm https://omnitruck.chef.io/install.ps1); Install-Project -Project chefdk -channel stable - - bundle config --local path vendor/bundle - - SET CI=true - - SET BUNDLE_WITHOUT=changelog:style - -build_script: - - ps: c:\opscode\chefdk\bin\chef.bat shell-init powershell | iex - - bundle install || bundle install || bundle install - -test_script: - - SET SPEC_OPTS=--format progress - - c:\opscode\chefdk\bin\chef.bat exec bundle exec rake spec - # aruba on windows seems pretty terribadly broken: https://github.com/cucumber/aruba/pull/422 - # - c:\opscode\chefdk\bin\chef.bat exec bundle exec cucumber