docker-sshd/.travis.yml
2020-08-04 08:13:02 +02:00

43 lines
1.4 KiB
YAML

sudo: required
language: bash
addons:
apt:
packages:
- docker-ce
- w3m
- shellcheck
env:
global:
- IMAGE="alpine-sshd"
- IMAGE_NAME="${DOCKER_USER}/${IMAGE}"
before_script:
- sudo sysctl -w net.ipv4.ip_forward=1
- export ALPINE_VERSION="3.12"
- export OPENSSH_VERSION="$(w3m -dump "https://pkgs.alpinelinux.org/packages?name=openssh&branch=v${ALPINE_VERSION}" | grep -m 1 "x86" | awk '{print $2}')"
script: |
for i in *.sh ; do shellcheck $i ; done && \
docker build \
--no-cache \
--pull \
--quiet \
--build-arg ALPINE_VERSION="${ALPINE_VERSION}" \
--build-arg OPENSSH_VERSION="${OPENSSH_VERSION}" \
--tag "${IMAGE_NAME}:${OPENSSH_VERSION}-alpine${ALPINE_VERSION}" \
--tag "${IMAGE_NAME}:${OPENSSH_VERSION}-alpine" \
--tag "${IMAGE_NAME}:${OPENSSH_VERSION}" \
--tag "${IMAGE_NAME}:latest" \
--file "${TRAVIS_BUILD_DIR}/Dockerfile" \
"${TRAVIS_BUILD_DIR}"
if [[ "${TRAVIS_BRANCH}" == "master" ]] && [[ "${TRAVIS_PULL_REQUEST}" == "false" ]]; then
docker login -u "${DOCKER_USER}" -p "${DOCKER_PASSWORD}"
docker push "${IMAGE_NAME}:${OPENSSH_VERSION}-alpine${ALPINE_VERSION}"
docker push "${IMAGE_NAME}:${OPENSSH_VERSION}-alpine"
docker push "${IMAGE_NAME}:${OPENSSH_VERSION}"
docker push "${IMAGE_NAME}:latest"
fi