Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
f064078
Cleanup time
rndnoise Aug 12, 2020
b72eae3
Fix build issue
rndnoise Aug 12, 2020
e1e7fc9
Rewrite startup script
rndnoise Aug 19, 2020
16fc4aa
Fix github workflow
rndnoise Aug 19, 2020
444c696
Disable flaky OS detection in pi-hole installer
rndnoise Aug 19, 2020
d535ad5
Fix build issue
rndnoise Aug 19, 2020
4b6aa6d
Tag releases correctly; ensure installer uses correct component versions
rndnoise Aug 19, 2020
1988c2a
Fix missing IPV4_ configuration
rndnoise Aug 20, 2020
174fc79
Don't build arm/v7, troubleshoot lightttpd configuration
rndnoise Aug 24, 2020
ab0873a
Bug fixes, reset pihole uid/gid according to $PUID/$PGID
rndnoise Aug 24, 2020
7b71980
Implement missing configuration (dnsmasq upstream servers)
rndnoise Aug 25, 2020
7cdad02
Fix listen configuration
rndnoise Aug 25, 2020
e02532a
Fix lighttpd configuration file being truncated
rndnoise Aug 25, 2020
84b03df
Fix type error
rndnoise Aug 26, 2020
f020c93
Fix syntax error in fastcgi configuration
rndnoise Aug 26, 2020
c6f065d
Fix missing log file
rndnoise Aug 26, 2020
153fc9b
Fix permissions issue
rndnoise Aug 26, 2020
5eda559
Create dirs before files, otherwise ENOTDIR
rndnoise Aug 26, 2020
ca67437
Implement missing configuration
rndnoise Aug 27, 2020
944c517
Optional debugging output
rndnoise Aug 27, 2020
9c4de39
Fix inverted condition
rndnoise Aug 27, 2020
a141578
Fix obvious errors
rndnoise Aug 27, 2020
720ba88
Fix some rough edges re: IPv4 and IPv6
rndnoise Aug 27, 2020
a44f0a3
Fix IPv4/6 detection issues
rndnoise Aug 27, 2020
660e317
Add documentation
rndnoise Aug 28, 2020
980f539
Update README.md
rndnoise Aug 28, 2020
ebdc038
Update README.md
rndnoise Aug 28, 2020
5b1a4dc
Update README.md
rndnoise Aug 28, 2020
6713655
More TODO tasks
rndnoise Aug 28, 2020
53e5167
Fix temperature and password issues
rndnoise Sep 7, 2020
5255bce
Fix temperature and password issues
rndnoise Sep 7, 2020
a175946
Merge branch 'development' of rndnoise-github.com:rndnoise/docker-pih…
rndnoise Sep 7, 2020
40c643d
v5.1.2 (#2)
rndnoise Sep 8, 2020
e317a48
Fix more build issues, README badges
rndnoise Sep 8, 2020
a1496b4
Fix README badges
rndnoise Sep 8, 2020
baedb03
Fix setting incorrect web password, upgrade to Debian 10 (buster)
rndnoise Sep 10, 2020
ddeb08a
Separate UID/GID for www-data and pihole
rndnoise Sep 11, 2020
adf3a1e
Don't wait for pihole -g (update block lists) to finish before starti…
rndnoise Sep 14, 2020
d3965ff
Fix another dumb error, also skip chown if uid/gid hasn't changed
rndnoise Sep 14, 2020
2e988f2
🤦
rndnoise Sep 14, 2020
34c81da
Moved TODOs to GitHub project
rndnoise Sep 14, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 0 additions & 5 deletions .dockerignore

This file was deleted.

48 changes: 0 additions & 48 deletions .github/ISSUE_TEMPLATE.md

This file was deleted.

26 changes: 0 additions & 26 deletions .github/PULL_REQUEST_TEMPLATE.md

This file was deleted.

174 changes: 174 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,174 @@
name: build

on:
push:
branches:
- master
- features/*
- releases/*
- development
tags:
- v*

# For GitHub-hosted runners, each job in a workflow runs in a fresh instance of
# a virtual environment.
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: checkout repo
uses: actions/checkout@2036a08e25fa78bbd946711a407b529a0a1204bf #v2.3.2

- name: setup docker buildx
id: buildx
uses: crazy-max/ghaction-docker-buildx@bb77f35f7a82f54fcda51000ea4e4467825014fd #v3.3.0
with:
qemu-version: latest
buildx-version: latest

- name: setup cache
id: cache
uses: actions/cache@5ca27f25cb3a0babe750cad7e4fddd3e55f29e9a #v2.1.1
with:
key: ${{ runner.os }}-buildx-${{ github.sha }}
path: /tmp/buildx-cache
restore-keys: ${{ runner.os }}-buildx-

- name: configure build
id: config
env:
GITHUB_REPO: ${{ github.repository }}
run: |
if [[ $GITHUB_REF == refs/tags/v* ]]; then
# Tagged release
echo ::set-output name=version::${GITHUB_REF#refs/tags/}
elif [[ $GITHUB_REF == refs/heads/master ]]; then
# Master branch (next step is tag for release)
echo ::set-output name=version::latest
elif [[ $GITHUB_REF == refs/heads/releases/* ]]; then
# Release candidate branch (next step is merge into master)
echo ::set-output name=version::${GITHUB_REF#refs/heads/releases/}-rc
elif [[ $GITHUB_REF == refs/heads/development ]]; then
# Development branch (next step is fork or merge into release candidate branch)
echo ::set-output name=version::edge
elif [[ $GITHUB_REF == refs/heads/features/* ]]; then
# Feature branch (next step is to merge into development branch)
echo ::set-output name=version::edge-${GITHUB_REF#refs/heads/features/}
else
echo "\$GITHUB_REF ($GITHUB_REF) did not match supported patterns"
exit 1
fi

echo ::set-output name=date::$(date -u +'%Y-%m-%dT%H:%M:%SZ')
echo ::set-output name=gitsha::${GITHUB_SHA::8}

# Temporary workaround (don't build linux/arm/v7) https://github.com/moby/moby/issues/41017
echo ::set-output name=docker_platforms::linux/amd64,linux/arm/v6,linux/arm64
echo ::set-output name=docker_image::${GITHUB_REPO##*/docker-}

echo ::set-output name=pihole_core_version::$(grep "PIHOLE_CORE_VERSION=" Dockerfile | head -1 | grep -o "v.*")
echo ::set-output name=pihole_ftl_version::$( grep "PIHOLE_FTL_VERSION=" Dockerfile | head -1 | grep -o "v.*")
echo ::set-output name=pihole_web_version::$( grep "PIHOLE_WEB_VERSION=" Dockerfile | head -1 | grep -o "v.*")

- name: show configuration
run: |
echo date: ${{ steps.config.outputs.date }}
echo gitsha: ${{ steps.config.outputs.gitsha }}
echo version: ${{ steps.config.outputs.version }}
echo docker_image: ${{ steps.config.outputs.docker_image }}
echo docker_platforms: ${{ steps.config.outputs.docker_platforms }}
echo pihole_ftl_version: ${{ steps.config.outputs.pihole_ftl_version }}
echo pihole_web_version: ${{ steps.config.outputs.pihole_web_version }}
echo pihole_core_version: ${{ steps.config.outputs.pihole_core_version }}

- name: build docker image
env:
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
run: |
docker buildx build \
--output "type=image,push=false" \
--cache-to "type=local,dest=/tmp/buildx-cache" \
--cache-from "type=local,src=/tmp/buildx-cache" \
--platform "${{ steps.config.outputs.docker_platforms }}" \
--tag "$DOCKERHUB_USERNAME/${{ steps.config.outputs.docker_image }}:${{ steps.config.outputs.version }}" \
.

- name: cleanup
run: |
rm -f "$HOME/.docker/config.json"

outputs:
date: ${{ steps.config.outputs.date }}
gitsha: ${{ steps.config.outputs.gitsha }}
version: ${{ steps.config.outputs.version }}
docker_image: ${{ steps.config.outputs.docker_image }}
docker_platforms: ${{ steps.config.outputs.docker_platforms }}
pihole_ftl_version: ${{ steps.config.outputs.pihole_ftl_version }}
pihole_web_version: ${{ steps.config.outputs.pihole_web_version }}
pihole_core_version: ${{ steps.config.outputs.pihole_core_version }}

publish:
runs-on: ubuntu-latest
needs: build
steps:
- name: checkout repo
uses: actions/checkout@2036a08e25fa78bbd946711a407b529a0a1204bf #v2.3.2

- name: setup docker buildx
id: buildx
uses: crazy-max/ghaction-docker-buildx@bb77f35f7a82f54fcda51000ea4e4467825014fd #v3.3.0
with:
qemu-version: latest
buildx-version: latest

- name: setup cache
id: cache
uses: actions/cache@5ca27f25cb3a0babe750cad7e4fddd3e55f29e9a #v2.1.1
with:
key: ${{ runner.os }}-buildx-${{ github.sha }}
path: /tmp/buildx-cache
restore-keys: ${{ runner.os }}-buildx-

- name: docker hub login
if: ${{ success() }}
env:
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSwORD }}
run: |
echo "$DOCKERHUB_PASSWORD" | docker login --username "$DOCKERHUB_USERNAME" --password-stdin

- name: push docker image
if: ${{ success() }}
env:
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
run: |
docker buildx build \
--output "type=image,push=true" \
--cache-from "type=local,src=/tmp/buildx-cache" \
--platform "${{ needs.build.outputs.docker_platforms }}" \
--tag "$DOCKERHUB_USERNAME/${{ needs.build.outputs.docker_image }}:${{ needs.build.outputs.version }}" \
--label "org.opencontainers.image.created=${{ needs.build.outputs.date }}" \
--label "org.opencontainers.image.revision=${{ needs.build.outputs.gitsha }}" \
--label "org.opencontainers.image.source=https://github.com/${{ github.repository }}" \
--label "org.opencontainers.image.version=${{ needs.build.outputs.version }}" \
--label "org.opencontainers.image.title=${{ needs.build.outputs.docker_image }}" \
.

- name: create release
uses: actions/create-release@1e92f6fc665e271a5435631ba00711fdd83d9d27 #v1.1.3
if: ${{ success() && github.event_name == 'tag' }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
body: |
Core **[${{ needs.build.outputs.pihole_core_version }}](https://github.com/pi-hole/pi-hole/releases/tag/${{ needs.build.outputs.pihole_core_version }})**
FTLDNS **[${{ needs.build.outputs.pihole_ftl_version }}](https://github.com/pi-hole/FTL/releases/tag/${{ needs.build.outputs.pihole_ftl_version }})**
Web interface **[${{ needs.build.outputs.pihole_web_version }}](https://github.com/pi-hole/AdminLTE/releases/tag/${{ needs.build.outputs.pihole_web_version }})**
draft: true
prerelease: false

- name: cleanup
run: |
rm -f "$HOME/.docker/config.json"
65 changes: 0 additions & 65 deletions .github/workflows/test-and-build.yaml

This file was deleted.

Empty file removed .gitmodules
Empty file.
10 changes: 0 additions & 10 deletions CONTRIBUTING.md

This file was deleted.

Loading