sudo: required language: bash addons: apt: packages: - docker-ce - w3m env: global: - IMAGE="alpine-sshd" - IMAGE_NAME="${DOCKER_USER}/${IMAGE}" before_script: - sudo sysctl -w net.ipv4.ip_forward=1 - export ALPINE_VERSION="3.8" - export OPENSSH_VERSION="$(w3m -dump "https://pkgs.alpinelinux.org/packages?name=openssh&branch=v${ALPINE_VERSION}" | grep -m 1 "x86" | awk '{print $2}')" script: | 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}: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}:latest" fi