hassio-addons/.github/workflows/addon-ci.yaml
dependabot[bot] 181b158f14
Bump frenck/action-yamllint from 1.3 to 1.4
Bumps [frenck/action-yamllint](https://github.com/frenck/action-yamllint) from 1.3 to 1.4.
- [Release notes](https://github.com/frenck/action-yamllint/releases)
- [Commits](https://github.com/frenck/action-yamllint/compare/v1.3...v1.4)

---
updated-dependencies:
- dependency-name: frenck/action-yamllint
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-16 06:14:34 +00:00

126 lines
3.4 KiB
YAML

---
name: CI
# yamllint disable-line rule:true
on:
push:
branches:
- dev
- main
pull_request:
branches:
- dev
- main
workflow_call:
inputs:
slug:
description: Overrides the detected slug
required: false
type: string
jobs:
information:
name: Gather add-on information
runs-on: ubuntu-latest
outputs:
architectures: ${{ steps.information.outputs.architectures }}
base_image_signer: ${{ steps.information.outputs.codenotary_base_image }}
build: ${{ steps.information.outputs.build }}
description: ${{ steps.information.outputs.description }}
name: ${{ steps.information.outputs.name }}
slug: ${{ steps.override.outputs.slug }}
target: ${{ steps.information.outputs.target }}
steps:
- name: ⤵️ Check out code from GitHub
uses: actions/checkout@v3.3.0
- name: 🚀 Run add-on information action
id: information
uses: frenck/action-addon-information@v1.4.2
- name: 🚀 Process possible slug override
id: override
run: |
slug="${{ steps.information.outputs.slug }}"
if [[ ! -z "${{ inputs.slug }}" ]]; then
slug="${{ inputs.slug }}"
fi
echo "::set-output name=slug::$slug"
lint-addon:
name: Lint Add-on
needs:
- information
runs-on: ubuntu-latest
steps:
- name: ⤵️ Check out code from GitHub
uses: actions/checkout@v3.3.0
- name: 🚀 Run Add-on Lint
uses: frenck/action-addon-linter@v2.10.1
with:
community: false
path: "./${{ needs.information.outputs.target }}"
lint-hadolint:
name: Hadolint
needs:
- information
runs-on: ubuntu-latest
steps:
- name: ⤵️ Check out code from GitHub
uses: actions/checkout@v3.3.0
- name: 🚀 Run Hadolint
uses: brpaz/hadolint-action@v1.5.0
with:
dockerfile: "./${{ needs.information.outputs.target }}/Dockerfile"
lint-json:
name: JSON Lint
runs-on: ubuntu-latest
steps:
- name: ⤵️ Check out code from GitHub
uses: actions/checkout@v3.3.0
- name: 🚀 Run JQ
run: |
shopt -s globstar
cat **/*.json | jq '.'
lint-markdown:
name: MarkdownLint
runs-on: ubuntu-latest
steps:
- name: ⤵️ Check out code from GitHub
uses: actions/checkout@v3.3.0
- name: 🚀 Run mdl
uses: actionshub/markdownlint@v2.1.2
lint-shellcheck:
name: Shellcheck
runs-on: ubuntu-latest
steps:
- name: ⤵️ Check out code from GitHub
uses: actions/checkout@v3.3.0
- name: 🚀 Run Shellcheck
uses: ludeeus/action-shellcheck@1.1.0
env:
SHELLCHECK_OPTS: -s bash
lint-yamllint:
name: YAMLLint
runs-on: ubuntu-latest
steps:
- name: ⤵️ Check out code from GitHub
uses: actions/checkout@v3.3.0
- name: 🚀 Run YAMLLint
uses: frenck/action-yamllint@v1.4
lint-prettier:
name: Prettier
runs-on: ubuntu-latest
steps:
- name: ⤵️ Check out code from GitHub
uses: actions/checkout@v3.3.0
- name: 🚀 Run Prettier
uses: creyD/prettier_action@v4.2
with:
prettier_options: --write **/*.{json,js,md,yaml}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}