diff options
| -rw-r--r-- | .github/workflows/daily_unit_tests_with_nightly_puppet_gem.yaml | 58 | ||||
| -rw-r--r-- | .github/workflows/static_code_analysis.yaml | 41 | ||||
| -rw-r--r-- | .github/workflows/unit_test_with_released_puppet_gem.yaml | 48 | ||||
| -rw-r--r-- | .github/workflows/unit_tests_with_nightly_puppet_gem.yaml | 60 | ||||
| -rw-r--r-- | .travis.yml | 45 | ||||
| -rw-r--r-- | README.md | 6 | ||||
| -rw-r--r-- | appveyor.yml | 56 | 
7 files changed, 213 insertions, 101 deletions
diff --git a/.github/workflows/daily_unit_tests_with_nightly_puppet_gem.yaml b/.github/workflows/daily_unit_tests_with_nightly_puppet_gem.yaml new file mode 100644 index 0000000..b31bf18 --- /dev/null +++ b/.github/workflows/daily_unit_tests_with_nightly_puppet_gem.yaml @@ -0,0 +1,58 @@ +--- +name: '[Daily] Unit Tests with nightly Puppet gem' + +on: +  schedule: +    - cron: '0 5 * * 1-5' + +jobs: +  daily_unit_tests_with_nightly_puppet_gem: +    name: ${{ matrix.os_type }} / Puppet${{ matrix.puppet_version }} gem / Ruby ${{ matrix.ruby }}  +    strategy: +      matrix: +        os: [ 'ubuntu-18.04', 'macos-10.15', 'windows-2019' ] +        puppet_version: [ 5, 6, 7 ] +        include: +          - puppet_version: 5 +            ruby: 2.4 +          - puppet_version: 6 +            ruby: 2.5 +          - puppet_version: 7 +            ruby: 2.7 + +          - os: 'ubuntu-18.04' +            os_type: 'Linux' +            env_set_cmd: 'export ' +            gem_file: 'puppet-latest.gem' +          - os: 'macos-10.15' +            os_type: 'macOS' +            env_set_cmd: 'export ' +            gem_file: 'puppet-latest-universal-darwin.gem' +          - os: 'windows-2019' +            os_type: 'Windows' +            env_set_cmd: '$env:' +            gem_file: 'puppet-latest-x64-mingw32.gem' + +    runs-on: ${{ matrix.os }} +    steps: +      - name: Checkout code +        uses: actions/checkout@v2 + +      - name: Install ruby version ${{ matrix.ruby }} +        uses: ruby/setup-ruby@v1 +        with: +          ruby-version: ${{ matrix.ruby }} + +      - name: Install the latest nightly build of puppet${{ matrix.puppet_version }} gem +        run: | +          curl http://nightlies.puppet.com/downloads/gems/puppet${{ matrix.puppet_version }}-nightly/${{ matrix.gem_file }} --output puppet.gem +          gem install puppet.gem -N + +      - name: Prepare testing environment with bundler +        run: | +          bundle config set system 'true' +          ${{ matrix.env_set_cmd }}PUPPET_GEM_VERSION=$(ruby -e 'puts /puppet\s+\((.+)\)/.match(`gem list -eld puppet`)[1]') +          bundle update --jobs 4 --retry 3 + +      - name: Run unit tests +        run: bundle exec rake parallel_spec diff --git a/.github/workflows/static_code_analysis.yaml b/.github/workflows/static_code_analysis.yaml new file mode 100644 index 0000000..ed4a232 --- /dev/null +++ b/.github/workflows/static_code_analysis.yaml @@ -0,0 +1,41 @@ +--- +name: Static Code Analysis + +on: +  push: +    branches: [ main ] +  pull_request: +    branches: [ main ] + +jobs: +  static_code_analysis: +    name: Run checks + +    env: +      ruby_version: 2.5 +      extra_checks: check:symlinks check:git_ignore check:dot_underscore check:test_file + +    runs-on: 'ubuntu-18.04' +    steps: +      - name: Checkout current PR code +        uses: actions/checkout@v2 + +      - name: Install ruby version ${{ env.ruby_version }} +        uses: ruby/setup-ruby@v1 +        with: +          ruby-version: ${{ env.ruby_version }} + +      - name: Prepare testing environment with bundler +        run: bundle update --jobs 4 --retry 3 + +      - name: Run rubocop check +        run: bundle exec rake ${{ env.extra_checks }} rubocop + +      - name: Run syntax check +        run: bundle exec rake ${{ env.extra_checks }} syntax syntax:hiera syntax:manifests syntax:templates + +      - name: Run lint check +        run: bundle exec rake ${{ env.extra_checks }} lint + +      - name: Run metadata_lint check +        run: bundle exec rake ${{ env.extra_checks }} metadata_lint diff --git a/.github/workflows/unit_test_with_released_puppet_gem.yaml b/.github/workflows/unit_test_with_released_puppet_gem.yaml new file mode 100644 index 0000000..5d044cd --- /dev/null +++ b/.github/workflows/unit_test_with_released_puppet_gem.yaml @@ -0,0 +1,48 @@ +--- +name: Unit Tests with released Puppet gem + +on: +  push: +    branches: [ main ] +  pull_request: +    branches: [ main ] + +jobs: +  unit_tests_with_released_puppet_gem: +    name: ${{ matrix.os_type }} / Puppet${{ matrix.puppet_version }} gem / Ruby ${{ matrix.ruby }}  +    strategy: +      matrix: +        os: [ 'ubuntu-18.04', 'macos-10.15', 'windows-2019' ] +        puppet_version: [ 5, 6 ] +        include: +          - puppet_version: 5 +            ruby: 2.4 +          - puppet_version: 6 +            ruby: 2.5 + +          - os: 'ubuntu-18.04' +            os_type: 'Linux' +          - os: 'macos-10.15' +            os_type: 'macOS'  +          - os: 'windows-2019' +            os_type: 'Windows'  + +    runs-on: ${{ matrix.os }} +    env: +      PUPPET_GEM_VERSION: ~> ${{ matrix.puppet_version }}.0 +    steps: +      - name: Checkout current PR code +        uses: actions/checkout@v2 + +      - name: Install ruby version ${{ matrix.ruby }} +        uses: ruby/setup-ruby@v1 +        with: +          ruby-version: ${{ matrix.ruby }} + +      - name: Prepare testing environment with bundler +        run: | +          bundle config set system 'true' +          bundle update --jobs 4 --retry 3 + +      - name: Run unit tests +        run: bundle exec rake parallel_spec diff --git a/.github/workflows/unit_tests_with_nightly_puppet_gem.yaml b/.github/workflows/unit_tests_with_nightly_puppet_gem.yaml new file mode 100644 index 0000000..8c5d909 --- /dev/null +++ b/.github/workflows/unit_tests_with_nightly_puppet_gem.yaml @@ -0,0 +1,60 @@ +--- +name: Unit Tests with nightly Puppet gem + +on: +  push: +    branches: [ main ] +  pull_request: +    branches: [ main ] + +jobs: +  unit_tests_with_nightly_puppet_gem: +    name: ${{ matrix.os_type }} / Puppet${{ matrix.puppet_version }} gem / Ruby ${{ matrix.ruby }} +    strategy: +      matrix: +        os: [ 'ubuntu-18.04', 'macos-10.15', 'windows-2019' ] +        puppet_version: [ 5, 6, 7 ] +        include: +          - puppet_version: 5 +            ruby: 2.4 +          - puppet_version: 6 +            ruby: 2.5 +          - puppet_version: 7 +            ruby: 2.7 + +          - os: 'ubuntu-18.04' +            os_type: 'Linux' +            env_set_cmd: 'export ' +            gem_file: 'puppet-latest.gem' +          - os: 'macos-10.15' +            os_type: 'macOS' +            env_set_cmd: 'export ' +            gem_file: 'puppet-latest-universal-darwin.gem' +          - os: 'windows-2019' +            os_type: 'Windows' +            env_set_cmd: '$env:' +            gem_file: 'puppet-latest-x64-mingw32.gem' + +    runs-on: ${{ matrix.os }} +    steps: +      - name: Checkout current PR code +        uses: actions/checkout@v2 + +      - name: Install ruby version ${{ matrix.ruby }} +        uses: ruby/setup-ruby@v1 +        with: +          ruby-version: ${{ matrix.ruby }} + +      - name: Install the latest nightly build of puppet${{ matrix.puppet_version }} gem +        run: | +          curl http://nightlies.puppet.com/downloads/gems/puppet${{ matrix.puppet_version }}-nightly/${{ matrix.gem_file }} --output puppet.gem +          gem install puppet.gem -N + +      - name: Prepare testing environment with bundler +        run: | +          bundle config set system 'true' +          ${{ matrix.env_set_cmd }}PUPPET_GEM_VERSION=$(ruby -e 'puts /puppet\s+\((.+)\)/.match(`gem list -eld puppet`)[1]') +          bundle update --jobs 4 --retry 3 + +      - name: Run unit tests +        run: bundle exec rake parallel_spec diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index ed27d4d..0000000 --- a/.travis.yml +++ /dev/null @@ -1,45 +0,0 @@ ---- -dist: xenial -language: ruby -cache: bundler -before_install: -  - bundle -v -  - rm -f Gemfile.lock -  - gem update --system $RUBYGEMS_VERSION -  - gem --version -  - bundle -v -script: -  - 'bundle exec rake $CHECK' -bundler_args: --without system_tests -rvm: -  - 2.5.3 -stages: -  - static -  - spec -  - acceptance -  - -    if: tag =~ ^v\d -    name: deploy -matrix: -  fast_finish: true -  include: -    - -      env: CHECK="check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop syntax lint metadata_lint" -      stage: static -    - -      env: PUPPET_GEM_VERSION="~> 5.0" CHECK=parallel_spec -      rvm: 2.4.5 -      stage: spec -    - -      env: PUPPET_GEM_VERSION="~> 6.0" CHECK=parallel_spec -      rvm: 2.5.3 -      stage: spec -    - -      env: DEPLOY_TO_FORGE=yes -      stage: deploy -branches: -  only: -    - master -    - /^v\d/ -notifications: -  email: false @@ -1,6 +1,12 @@  # host_core +[](https://github.com/puppetlabs/puppetlabs-host_core/actions) +[](https://github.com/puppetlabs/puppetlabs-host_core/actions)  +[](https://github.com/puppetlabs/puppetlabs-host_core/actions)  +[](https://github.com/puppetlabs/puppetlabs-host_core/actions) + +  #### Table of Contents  1. [Description](#description) diff --git a/appveyor.yml b/appveyor.yml deleted file mode 100644 index ec38949..0000000 --- a/appveyor.yml +++ /dev/null @@ -1,56 +0,0 @@ ---- -version: 1.1.x.{build} -branches: -  only: -    - master -    - release -skip_commits: -  message: /^\(?doc\)?.*/ -clone_depth: 10 -init: -  - SET -  - 'mkdir C:\ProgramData\PuppetLabs\code && exit 0' -  - 'mkdir C:\ProgramData\PuppetLabs\facter && exit 0' -  - 'mkdir C:\ProgramData\PuppetLabs\hiera && exit 0' -  - 'mkdir C:\ProgramData\PuppetLabs\puppet\var && exit 0' -environment: -  matrix: -    - -      RUBY_VERSION: 24-x64 -      CHECK: syntax lint metadata_lint check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop -    - -      PUPPET_GEM_VERSION: ~> 5.0 -      RUBY_VERSION: 24 -      CHECK: parallel_spec -    - -      PUPPET_GEM_VERSION: ~> 5.0 -      RUBY_VERSION: 24-x64 -      CHECK: parallel_spec -    - -      PUPPET_GEM_VERSION: ~> 6.0 -      RUBY_VERSION: 25 -      CHECK: parallel_spec -    - -      PUPPET_GEM_VERSION: ~> 6.0 -      RUBY_VERSION: 25-x64 -      CHECK: parallel_spec -matrix: -  fast_finish: true -install: -  - set PATH=C:\Ruby%RUBY_VERSION%\bin;%PATH% -  - bundle install --jobs 4 --retry 2 --without system_tests -  - type Gemfile.lock -build: off -test_script: -  - bundle exec puppet -V -  - ruby -v -  - gem -v -  - bundle -v -  - bundle exec rake %CHECK% -notifications: -  - provider: Email -    to: -      - nobody@nowhere.com -    on_build_success: false -    on_build_failure: false -    on_build_status_changed: false  | 
