This commit is contained in:
commit
6a14b9d2c7
29
.drone.yml
Normal file
29
.drone.yml
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: dockerhub-build-trigger
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: linux
|
||||||
|
arch: amd64
|
||||||
|
|
||||||
|
clone:
|
||||||
|
disable: true
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
branch:
|
||||||
|
- master
|
||||||
|
event:
|
||||||
|
- push
|
||||||
|
- cron
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: call webhook
|
||||||
|
pull: always
|
||||||
|
image: bash:latest
|
||||||
|
environment:
|
||||||
|
ENDPOINT:
|
||||||
|
from_secret: dockerhub_endpoint
|
||||||
|
commands:
|
||||||
|
- apk add --no-cache curl
|
||||||
|
- curl -sO https://git.dotya.ml/${DRONE_REPO}/raw/branch/master/curl.it
|
||||||
|
- bash ./curl.it $ENDPOINT
|
51
Dockerfile
Normal file
51
Dockerfile
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
FROM node:12.19.0-alpine3.12
|
||||||
|
|
||||||
|
ENV GLIB_PACKAGE_BASE_URL https://github.com/sgerrand/alpine-pkg-glibc/releases/download
|
||||||
|
ENV GLIB_VERSION 2.32-r0
|
||||||
|
|
||||||
|
ENV JAVA_HOME /usr/lib/jvm/java-1.8-openjdk
|
||||||
|
|
||||||
|
ENV GRADLE_HOME /usr/local/gradle
|
||||||
|
ENV GRADLE_VERSION 6.7
|
||||||
|
|
||||||
|
ENV ANDROID_HOME /usr/local/android-sdk-linux
|
||||||
|
ENV ANDRDOID_TOOLS_VERSION r25.2.5
|
||||||
|
ENV ANDROID_API_LEVELS android-29
|
||||||
|
ENV ANDROID_BUILD_TOOLS_VERSION 29.0.2
|
||||||
|
ENV IONIC_VERSION 5.4.16
|
||||||
|
|
||||||
|
ENV PATH ${GRADLE_HOME}/bin:${JAVA_HOME}/bin:${ANDROID_HOME}/tools:$ANDROID_HOME/platform-tools:$PATH
|
||||||
|
|
||||||
|
RUN apk update && \
|
||||||
|
apk add curl openjdk8-jre openjdk8
|
||||||
|
|
||||||
|
RUN npm install -g cordova ionic@${IONIC_VERSION}
|
||||||
|
|
||||||
|
RUN mkdir -p ${GRADLE_HOME} && \
|
||||||
|
curl -L https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-bin.zip > /tmp/gradle.zip && \
|
||||||
|
unzip /tmp/gradle.zip -d ${GRADLE_HOME} && \
|
||||||
|
mv ${GRADLE_HOME}/gradle-${GRADLE_VERSION}/* ${GRADLE_HOME} && \
|
||||||
|
rm -r ${GRADLE_HOME}/gradle-${GRADLE_VERSION}/
|
||||||
|
|
||||||
|
RUN mkdir -p ${ANDROID_HOME} && \
|
||||||
|
curl -L https://dl.google.com/android/repository/tools_${ANDRDOID_TOOLS_VERSION}-linux.zip > /tmp/tools.zip && \
|
||||||
|
unzip /tmp/tools.zip -d ${ANDROID_HOME}
|
||||||
|
|
||||||
|
RUN curl -L https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub > /etc/apk/keys/sgerrand.rsa.pub && \
|
||||||
|
curl -L ${GLIB_PACKAGE_BASE_URL}/${GLIB_VERSION}/glibc-${GLIB_VERSION}.apk > /tmp/glibc.apk && \
|
||||||
|
curl -L ${GLIB_PACKAGE_BASE_URL}/${GLIB_VERSION}/glibc-bin-${GLIB_VERSION}.apk > /tmp/glibc-bin.apk && \
|
||||||
|
apk add /tmp/glibc-bin.apk /tmp/glibc.apk
|
||||||
|
|
||||||
|
RUN echo y | android update sdk --no-ui -a --filter platform-tools,${ANDROID_API_LEVELS},build-tools-${ANDROID_BUILD_TOOLS_VERSION}
|
||||||
|
|
||||||
|
RUN mkdir $ANDROID_HOME/licenses && \
|
||||||
|
echo 8933bad161af4178b1185d1a37fbf41ea5269c55 > $ANDROID_HOME/licenses/android-sdk-license && \
|
||||||
|
echo d56f5187479451eabf01fb78af6dfcb131a6481e >> $ANDROID_HOME/licenses/android-sdk-license && \
|
||||||
|
echo 24333f8a63b6825ea9c5514f83c2829b004d1fee >> $ANDROID_HOME/licenses/android-sdk-license && \
|
||||||
|
echo 84831b9409646a918e30573bab4c9c91346d8abd > $ANDROID_HOME/licenses/android-sdk-preview-license
|
||||||
|
|
||||||
|
RUN rm -rf /tmp/* /var/cache/apk/*
|
||||||
|
|
||||||
|
RUN npm i cordova-res
|
||||||
|
RUN cordova telemetry off
|
||||||
|
RUN npm install
|
14
README.md
Normal file
14
README.md
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
# docker-alpine-ionic
|
||||||
|
|
||||||
|
[![Build Status](https://drone.dotya.ml/api/badges/wanderer/docker-alpine-ionic/status.svg)](https://drone.dotya.ml/wanderer/docker-alpine-ionic)
|
||||||
|
[![Docker Cloud Build Status](https://img.shields.io/docker/cloud/build/immawanderer/alpine-ionic)](https://hub.docker.com/r/immawanderer/alpine-ionic/builds)
|
||||||
|
[![](https://images.microbadger.com/badges/version/immawanderer/archlinux.svg)](https://microbadger.com/images/immawanderer/archlinux)
|
||||||
|
[![](https://images.microbadger.com/badges/commit/immawanderer/archlinux.svg)](https://microbadger.com/images/immawanderer/archlinux)
|
||||||
|
|
||||||
|
The image is rebuilt approximately every hour to ensure it always has the latest packages.
|
||||||
|
|
||||||
|
push mirror lives in [this GitHub repo](https://github.com/wULLSnpAXbWZGYDYyhWTKKspEQoaYxXyhoisqHf/docker-alpine-ionic)
|
||||||
|
development happens on [this Gitea instance](https://git.dotya.ml/wanderer/docker-alpine-ionic)
|
||||||
|
|
||||||
|
## Purpose
|
||||||
|
* Alpine-based image to enable easily building apps using `ionic` and `cordova` in CI
|
7
curl.it
Executable file
7
curl.it
Executable file
@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ $# -gt 1 ]; then
|
||||||
|
curl -s -H 'Content-Type: application/json' --data '{"docker_tag":"nightly"}' -X POST $2
|
||||||
|
else
|
||||||
|
curl -s -H 'Content-Type: application/json' --data '{"docker_tag":"latest"}' -X POST $1
|
||||||
|
fi
|
10
hooks/build
Normal file
10
hooks/build
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# as per https://github.com/rossf7/label-schema-automated-build
|
||||||
|
|
||||||
|
# $IMAGE_NAME var is injected into the build so the tag is correct.
|
||||||
|
|
||||||
|
echo "Build hook running"
|
||||||
|
docker build --build-arg BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"` \
|
||||||
|
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
||||||
|
-t $IMAGE_NAME .
|
Loading…
Reference in New Issue
Block a user