From 37cdec0849eab9eccf68df0de0a4773371b51d62 Mon Sep 17 00:00:00 2001 From: Bruno Paz Date: Sun, 6 Dec 2020 09:46:26 +0000 Subject: [PATCH] chore: update README and CI pipeline --- .github/workflows/ci.yml | 68 +++++++++++++--------------------------- README.md | 35 +++++++++++++++++---- 2 files changed, 51 insertions(+), 52 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2238c0a..12b9ea8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,60 +10,34 @@ env: jobs: lint: - runs-on: ubuntu-latest - container: pipelinecomponents/hadolint:latest + name: Lint + runs-on: ubuntu-20.04 + container: pipelinecomponents/hadolint:0.10.1 steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v2 - name: Run hadolint run: hadolint Dockerfile - build: - runs-on: ubuntu-latest - needs: ['lint'] + build-test: + name: Build and Test + runs-on: ubuntu-20.04 + needs: ["lint"] steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v2 - name: Build Docker image run: docker build -t $TEST_IMAGE_NAME . - - name: Save Docker image artifact - run: docker save -o action.tar $TEST_IMAGE_NAME - - - name: Upload image artifact - uses: actions/upload-artifact@master - with: - name: action-image - path: action.tar - - test: - name: Unit Tests - runs-on: ubuntu-latest - needs: build - steps: - - uses: actions/checkout@v1 - - - name: Pull Image artifact - uses: actions/download-artifact@master - with: - name: action-image - - - name: Load image into docker context - run: docker load -i action.tar - - - name: Get Image Name - id: image_name - run: echo "##[set-output name=image;]$(echo $TEST_IMAGE_NAME)" - - name: Run Structure tests - uses: brpaz/structure-tests-action@master + uses: brpaz/structure-tests-action@v1.1.2 with: - image: ${{ steps.image_name.outputs.image }} + image: ${{ env.TEST_IMAGE_NAME }} - integration: + integration-tests: name: Integration Tests - runs-on: ubuntu-latest - needs: test + runs-on: ubuntu-20.04 + needs: build-test steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v2 - name: Run integration test uses: ./ @@ -73,11 +47,13 @@ jobs: release: if: github.event_name == 'push' && github.ref == 'refs/heads/master' name: Release - runs-on: ubuntu-latest - needs: integration + runs-on: ubuntu-20.04 + needs: integration-tests steps: - - uses: actions/checkout@v1 - - name: Semantic Release - uses: brpaz/action-semantic-release@master + - uses: actions/checkout@v2 + - uses: cycjimmy/semantic-release-action@v2 + with: + extra_plugins: | + @semantic-release/git env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} diff --git a/README.md b/README.md index c6f8c06..27f9a4e 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,35 @@ -# Hadolint GitHub Action +# Hadolint Action -> Action that runs [Hadolint](https://github.com/hadolint/hadolint) Dockerfile linting tool. +> GitHub Action that runs [Hadolint](https://github.com/hadolint/hadolint) Dockerfile linting tool. [![GitHub Action](https://img.shields.io/badge/GitHub-Action-blue?style=for-the-badge)](https://github.com/features/actions) [![License](https://img.shields.io/badge/License-MIT-yellow.svg?style=for-the-badge)](LICENSE) [![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge)](http://commitizen.github.io/cz-cli/) [![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge)](https://github.com/semantic-release/semantic-release?style=for-the-badge) -[![GitHub Actions](https://github.com/brpaz/hadolint-action/workflows/CI/badge.svg?style=for-the-badge)](https://github.com/brpaz/hadolint-action/actions) +[![GitHub Workflow Status](https://img.shields.io/github/workflow/status/brpaz/hadolint-action/CI?style=for-the-badge)](https://github.com/brpaz/hadolint-action/action) ## Usage +Add the following step to your workflow configuration: + ```yml steps: - uses: brpaz/hadolint-action@master + - uses: brpaz/hadolint-action@v1.2.1 + with: + dockerfile: Dockerfile ``` ## Inputs -**`dockerfile`** +| Name | Description | Default | +|------------ |----------------------------------------- |-------------- | +| dockerfile | The path to the Dockerfile to be tested | ./Dockerfile | + +## Hadolint Configuration + +To configure Hadolint (for example ignore rules), you can create an `.hadolint.yaml` file in the root of your repository. Please check the Hadolint [documentation](https://github.com/hadolint/hadolint#configure). -The path to the Dockerfile to be tested. By default it will look for a Dockerfile in the current directory. ## 🤝 Contributing @@ -37,6 +46,20 @@ Contributions are what make the open source community such an amazing place to b * [Building actions - GitHub Help](https://help.github.com/en/articles/building-actions) * [actions/toolkit: The GitHub ToolKit for developing GitHub Actions.](https://github.com/actions/toolkit) + +## 💛 Support the project + +If this project was useful to you in some form, I would be glad to have your support. It will help to keep the project alive and to have more time to work on Open Source. + +The sinplest form of support is to give a ⭐️ to this repo. + +You can also contribute with [GitHub Sponsors](https://github.com/sponsors/brpaz). + +[![GitHub Sponsors](https://img.shields.io/badge/GitHub%20Sponsors-Sponsor%20Me-red?style=for-the-badge)](https://github.com/sponsors/brpaz) + +Or if you prefer a one time donation to the project, you can simple: + +Buy Me A Coffee ## Author 👤 **Bruno Paz**