Compare commits
18 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d61a514225 | ||
|
|
72344cef4c | ||
|
|
daf9c73485 | ||
|
|
bafc62c306 | ||
|
|
5180203cbb | ||
|
|
9e310ca0bc | ||
|
|
b132a7108f | ||
|
|
0207779fbc | ||
|
|
3dac3d7b33 | ||
|
|
ec89f53d6c | ||
|
|
75ae08c9ef | ||
|
|
cd524ed3ef | ||
|
|
ed1b86afa1 | ||
|
|
fcbe84914f | ||
|
|
54d8dbc8da | ||
|
|
d8c0aed742 | ||
| fbb953a367 | |||
|
|
2f9b9d0e16 |
34
Dockerfile
34
Dockerfile
@ -1,25 +1,27 @@
|
|||||||
FROM harbor.ervine.dev/library/x86_64/alpine/alpine-3.11
|
FROM harbor.ervine.dev/public/x86_64/alpine:v3.12 AS builder
|
||||||
MAINTAINER “Jonathan Ervine” <docker@ervine.org>
|
LABEL maintainer="Jonathan Ervine <docker@ervine.org>"
|
||||||
|
|
||||||
ENV GETIPLAYER_OUTPUT=/config GETIPLAYER_PROFILE=/config/.get_iplayer PUID=1000 PGID=100 PORT=1935
|
WORKDIR /root/
|
||||||
EXPOSE 1935
|
|
||||||
VOLUME /config
|
|
||||||
|
|
||||||
RUN apk --update --no-cache add ffmpeg perl-cgi perl-mojolicious perl-lwp-protocol-https perl-xml-libxml jq logrotate su-exec tini
|
RUN apk --update --no-cache add git cmake make gcc g++ linux-headers jq
|
||||||
|
|
||||||
RUN wget -qnd "https://bitbucket.org/shield007/atomicparsley/raw/68337c0c05ec4ba2ad47012303121aaede25e6df/downloads/build_linux_x86_64/AtomicParsley" && \
|
RUN git clone https://git.ervine.org/jonny/atomicparsley atomic && \
|
||||||
install -m 755 -t /usr/local/bin ./AtomicParsley && \
|
cd atomic && \
|
||||||
rm ./AtomicParsley
|
cmake . && cmake --build . --config Release && \
|
||||||
|
wget -qO - "https://api.github.com/repos/get-iplayer/get_iplayer/releases/latest" > /tmp/latest.json && \
|
||||||
RUN wget -qO - "https://api.github.com/repos/get-iplayer/get_iplayer/releases/latest" > /tmp/latest.json && \
|
|
||||||
echo get_iplayer release `jq -r .name /tmp/latest.json` && \
|
echo get_iplayer release `jq -r .name /tmp/latest.json` && \
|
||||||
wget -qO - "`jq -r .tarball_url /tmp/latest.json`" | tar -zxf - && \
|
wget -qO - "`jq -r .tarball_url /tmp/latest.json`" | tar -zxf - && \
|
||||||
cd get-iplayer* && \
|
chmod 755 get-iplayer*/get_iplayer get-iplayer*/get_iplayer.cgi && \
|
||||||
install -m 755 -t /usr/local/bin ./get_iplayer ./get_iplayer.cgi && \
|
echo "Working directory $PWD" && \
|
||||||
cd / && \
|
echo $PWD
|
||||||
rm -rf get-iplayer* && \
|
|
||||||
rm /tmp/latest.json
|
|
||||||
|
|
||||||
|
FROM harbor.ervine.dev/public/x86_64/alpine:v3.12
|
||||||
|
|
||||||
|
RUN apk --update --no-cache add ffmpeg perl-cgi perl-mojolicious perl-lwp-protocol-https perl-xml-libxml logrotate su-exec tini
|
||||||
|
|
||||||
|
COPY --from=builder /root/atomic/AtomicParsley /usr/local/bin/AtomicParsley
|
||||||
|
COPY --from=builder /root/atomic/get-iplayer*/get_iplayer /usr/local/bin/get_iplayer
|
||||||
|
COPY --from=builder /root/atomic/get-iplayer*/get_iplayer.cgi /usr/local/bin/get_iplayer.cgi
|
||||||
COPY files/ /
|
COPY files/ /
|
||||||
|
|
||||||
ENTRYPOINT ["/sbin/tini", "--"]
|
ENTRYPOINT ["/sbin/tini", "--"]
|
||||||
|
|||||||
26
Dockerfile.old
Normal file
26
Dockerfile.old
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
FROM harbor.ervine.dev/public/x86_64/alpine:v3.12
|
||||||
|
LABEL Maintainer = "Jonathan Ervine <docker@ervine.org>"
|
||||||
|
|
||||||
|
ENV GETIPLAYER_OUTPUT=/config GETIPLAYER_PROFILE=/config/.get_iplayer PUID=1000 PGID=100 PORT=1935
|
||||||
|
EXPOSE 1935
|
||||||
|
VOLUME /config
|
||||||
|
|
||||||
|
RUN apk --update --no-cache add ffmpeg perl-cgi perl-mojolicious perl-lwp-protocol-https perl-xml-libxml jq logrotate su-exec tini
|
||||||
|
|
||||||
|
RUN wget -qnd "https://bitbucket.org/shield007/atomicparsley/raw/68337c0c05ec4ba2ad47012303121aaede25e6df/downloads/build_linux_x86_64/AtomicParsley" && \
|
||||||
|
install -m 755 -t /usr/local/bin ./AtomicParsley && \
|
||||||
|
rm ./AtomicParsley
|
||||||
|
|
||||||
|
RUN wget -qO - "https://api.github.com/repos/get-iplayer/get_iplayer/releases/latest" > /tmp/latest.json && \
|
||||||
|
echo get_iplayer release `jq -r .name /tmp/latest.json` && \
|
||||||
|
wget -qO - "`jq -r .tarball_url /tmp/latest.json`" | tar -zxf - && \
|
||||||
|
cd get-iplayer* && \
|
||||||
|
install -m 755 -t /usr/local/bin ./get_iplayer ./get_iplayer.cgi && \
|
||||||
|
cd / && \
|
||||||
|
rm -rf get-iplayer* && \
|
||||||
|
rm /tmp/latest.json
|
||||||
|
|
||||||
|
COPY files/ /
|
||||||
|
|
||||||
|
ENTRYPOINT ["/sbin/tini", "--"]
|
||||||
|
CMD /start
|
||||||
49
Jenkinsfile
vendored
49
Jenkinsfile
vendored
@ -1,18 +1,37 @@
|
|||||||
node("docker-node") {
|
podTemplate(yaml: """
|
||||||
docker.withRegistry('https://harbor.ervine.dev', 'jenkins-to-harbor') {
|
kind: Pod
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: kaniko
|
||||||
|
image: gcr.io/kaniko-project/executor:debug-539ddefcae3fd6b411a95982a830d987f4214251
|
||||||
|
imagePullPolicy: Always
|
||||||
|
command:
|
||||||
|
- /busybox/cat
|
||||||
|
tty: true
|
||||||
|
volumeMounts:
|
||||||
|
- name: jenkins-docker-cfg
|
||||||
|
mountPath: /kaniko/.docker
|
||||||
|
volumes:
|
||||||
|
- name: jenkins-docker-cfg
|
||||||
|
projected:
|
||||||
|
sources:
|
||||||
|
- secret:
|
||||||
|
name: regcred
|
||||||
|
items:
|
||||||
|
- key: .dockerconfigjson
|
||||||
|
path: config.json
|
||||||
|
"""
|
||||||
|
) {
|
||||||
|
|
||||||
git branch: "3.11.3", url: "ssh://git@git.ervine.org:2222/jonny/x86_64-alpine-get_iplayer", credentialsId: 'jenkins-to-git'
|
node(POD_LABEL) {
|
||||||
|
stage('Build with Kaniko') {
|
||||||
sh "git rev-parse HEAD > .git/commit-id"
|
git url: 'ssh://git@git.ervine.org/jonny/x86_64-alpine-get_iplayer.git', credentialsId: 'jenkins-to-git'
|
||||||
def commit_id = readFile('.git/commit-id').trim()
|
container('kaniko') {
|
||||||
println commit_id
|
sh '/kaniko/executor -f `pwd`/Dockerfile -c `pwd` --cache=true --destination=harbor.ervine.dev/public/x86_64/alpine/get_iplayer:3.26'
|
||||||
|
}
|
||||||
stage "build"
|
}
|
||||||
def app = docker.build "library/x86_64/alpine/get_iplayer"
|
stage('Notify gchat') {
|
||||||
|
hangoutsNotify message: "Alpine Linux 3.12.1 with BBC iPlayer has built",token: "A2ET831pVslqXTqAx6ycu573r",threadByJob: false
|
||||||
stage "publish"
|
}
|
||||||
app.push("${env.BUILD_NUMBER}")
|
|
||||||
app.push("3.25")
|
|
||||||
app.push("latest")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
0
files/start
Executable file → Normal file
0
files/start
Executable file → Normal file
Loading…
Reference in New Issue
Block a user