Skip to content

Merge pull request #39 from puerco/dependabot/github_actions/setup-ze… #105

Merge pull request #39 from puerco/dependabot/github_actions/setup-ze…

Merge pull request #39 from puerco/dependabot/github_actions/setup-ze… #105

# Copyright 2023 The Kubernetes Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: test-zeitgeist-action
on:
pull_request:
push:
branches:
- 'main'
jobs:
changes:
runs-on: ubuntu-latest
permissions:
pull-requests: read
outputs:
zeitgeist: ${{ steps.filter.outputs.zeitgeist }}
steps:
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
- uses: dorny/paths-filter@4512585405083f25c027a35db413c2b3b9006d50 # v2.11.1
id: filter
with:
filters: |
zeitgeist:
- 'setup-zeitgeist/**'
- '.github/workflows/test-setup-zeitgeist.yml'
test_zeitgeist_action:
needs: changes
if: ${{ needs.changes.outputs.zeitgeist == 'true' }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, ubuntu-latest, windows-latest]
permissions: {}
name: Install zeitgeist and test presence in path
steps:
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
- name: Install zeitgeist
uses: ./setup-zeitgeist
- name: Check install!
run: zeitgeist version
- name: Check root directory
run: |
if [[ $(git diff --stat) != '' ]]; then
echo 'should be clean'
exit 1
else
exit 0
fi
shell: bash
test_zeitgeist_with_go_install:
permissions: {}
needs: changes
if: ${{ needs.changes.outputs.zeitgeist == 'true' }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, ubuntu-latest, windows-latest]
go_version:
- '1.19'
- '1.20'
name: Try to install zeitgeist with go ${{ matrix.go_version }}
steps:
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
- uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0
with:
go-version: ${{ matrix.go_version }}
check-latest: true
- name: Install zeitgeist
uses: ./setup-zeitgeist
with:
zeitgeist-release: 'main'
- name: Check install!
run: zeitgeist version
test_zeitgeist_action_custom_dir_root:
runs-on: ${{ matrix.os }}
needs: changes
if: ${{ needs.changes.outputs.zeitgeist == 'true' }}
strategy:
matrix:
os: [ubuntu-latest]
permissions: {}
name: Install Custom zeitgeist and test presence in path with custom root dir
steps:
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
- name: Install zeitgeist
uses: ./setup-zeitgeist
with:
install-dir: /usr/bin
use-sudo: true
- name: Check install!
run: zeitgeist version
- name: Check install dir!
run: |
[[ $(dirname "$(which zeitgeist)") == /usr/bin ]]
shell: bash
- name: Check root directory
run: |
[[ -z $(git diff --stat) ]]
shell: bash
test_zeitgeist_action_custom_dir:
runs-on: ${{ matrix.os }}
needs: changes
if: ${{ needs.changes.outputs.zeitgeist == 'true' }}
strategy:
matrix:
os: [macos-latest, ubuntu-latest, windows-latest]
permissions: {}
name: Install Custom path zeitgeist and test presence in path
steps:
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
- name: Install zeitgeist
uses: ./setup-zeitgeist
with:
install-dir: "$HOME/.zeitgeisttest"
- name: Check install!
run: zeitgeist version
- name: Check install dir!
run: |
[[ $(dirname "$(which zeitgeist)") == "$HOME/.zeitgeisttest" ]]
shell: bash
- name: Check root directory
run: |
[[ -z $(git diff --stat) ]]
shell: bash
test_zeitgeist_action_wrong:
runs-on: ${{ matrix.os }}
needs: changes
if: ${{ needs.changes.outputs.zeitgeist == 'true' }}
strategy:
matrix:
os: [macos-latest, ubuntu-latest, windows-latest]
permissions: {}
name: Try to install a wrong zeitgeist
steps:
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
- name: Install zeitgeist
uses: ./setup-zeitgeist
with:
zeitgeist-release: 'honk'
continue-on-error: true