36 lines
1.1 KiB
YAML
36 lines
1.1 KiB
YAML
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
|
|
- docker login -u "${DOCKER_USER}" -p "${DOCKER_PASSWORD}"
|
|
- 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 push "${IMAGE_NAME}:${OPENSSH_VERSION}-alpine{ALPINE_VERSION}"
|
|
docker push "${IMAGE_NAME}:latest"
|
|
fi |