mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-06-06 23:55:56 +02:00
Set up CI with Azure Pipelines (#1)
* Set up CI with Azure Pipelines [skip ci]
This commit is contained in:
22
.azure-pipelines/addon-template.yml
Normal file
22
.azure-pipelines/addon-template.yml
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
# This azure pipeline template build add-ons
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
addon: ''
|
||||||
|
arch: ''
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- task: Docker@2
|
||||||
|
inputs:
|
||||||
|
containerRegistry: 'DockerHub'
|
||||||
|
command: 'login'
|
||||||
|
displayName: 'DockerHub login'
|
||||||
|
- script: sudo docker pull homeassistant/amd64-builder:$(versionBuilder)
|
||||||
|
displayName: 'Install Builder'
|
||||||
|
- script: |
|
||||||
|
sudo docker run --rm --privileged \
|
||||||
|
-v ~/.docker:/root/.docker \
|
||||||
|
-v /run/docker.sock:/run/docker.sock:rw -v $(pwd):/data:ro \
|
||||||
|
homeassistant/amd64-builder:$(versionBuilder) \
|
||||||
|
--addon ${{ parameters.arch }} -t /data/${{ parameters.addon }} \
|
||||||
|
--docker-hub petersendev --docker-hub-check
|
||||||
|
displayName: 'Build ${{ parameters.addon }}'
|
||||||
52
azure-pipelines.yml
Normal file
52
azure-pipelines.yml
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
# https://aka.ms/yaml
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
- master
|
||||||
|
|
||||||
|
variables:
|
||||||
|
versionHadolint: 'v1.16.3'
|
||||||
|
versionBuilder: '2.0'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
|
||||||
|
- job: 'Hadolint'
|
||||||
|
pool:
|
||||||
|
vmImage: 'ubuntu-16.04'
|
||||||
|
steps:
|
||||||
|
- script: sudo docker pull hadolint/hadolint:$(versionHadolint)
|
||||||
|
displayName: 'Install Hadolint'
|
||||||
|
- script: |
|
||||||
|
set -e
|
||||||
|
shopt -s globstar
|
||||||
|
for dockerfile in **/Dockerfile
|
||||||
|
do
|
||||||
|
echo "Linting: $dockerfile"
|
||||||
|
sudo docker run --rm -i \
|
||||||
|
-v $(pwd)/.hadolint.yaml:/.hadolint.yaml:ro \
|
||||||
|
hadolint/hadolint:$(versionHadolint) < "$dockerfile"
|
||||||
|
done
|
||||||
|
displayName: 'Run Hadolint'
|
||||||
|
|
||||||
|
- job: 'JQ'
|
||||||
|
pool:
|
||||||
|
vmImage: 'ubuntu-16.04'
|
||||||
|
steps:
|
||||||
|
- script: sudo apt-get install -y jq
|
||||||
|
displayName: 'Install JQ'
|
||||||
|
- bash: |
|
||||||
|
shopt -s globstar
|
||||||
|
cat **/*.json | jq '.'
|
||||||
|
displayName: 'Run JQ'
|
||||||
|
|
||||||
|
- job: 'znc'
|
||||||
|
condition: and(eq(variables['Build.SourceBranchName'], 'master'), succeeded('Hadolint'), succeeded('JQ'))
|
||||||
|
dependsOn:
|
||||||
|
- 'Hadolint'
|
||||||
|
- 'JQ'
|
||||||
|
pool:
|
||||||
|
vmImage: 'ubuntu-16.04'
|
||||||
|
steps:
|
||||||
|
- template: .azure-pipelines/addon-template.yml
|
||||||
|
parameters:
|
||||||
|
addon: 'znc'
|
||||||
|
arch: '--all'
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
FROM linuxserver/znc
|
FROM linuxserver/znc:znc-1.7.3-ls14
|
||||||
|
|
||||||
# use /data instead of /config for hass.io environment
|
# use /data instead of /config for hass.io environment
|
||||||
RUN sed -i "s|/config|/config/znc|g" /etc/services.d/znc/run \
|
RUN sed -i "s|/config|/config/znc|g" /etc/services.d/znc/run \
|
||||||
|
|||||||
Reference in New Issue
Block a user