Add NPM package, debs, rpms and refactor CI/build process
Closes many issues that I'll prune after adding more docs for users.
This commit is contained in:
30
ci/container/Dockerfile
Normal file
30
ci/container/Dockerfile
Normal file
@ -0,0 +1,30 @@
|
||||
FROM centos:7
|
||||
|
||||
RUN yum update -y && yum install -y \
|
||||
devtoolset-6 \
|
||||
gcc-c++ \
|
||||
xz \
|
||||
ccache \
|
||||
git \
|
||||
wget \
|
||||
openssl \
|
||||
libxkbfile-devel \
|
||||
libsecret-devel \
|
||||
libx11-devel \
|
||||
gettext
|
||||
|
||||
RUN yum install -y epel-release && \
|
||||
yum install -y ShellCheck jq golang
|
||||
|
||||
RUN go get github.com/goreleaser/nfpm/cmd/nfpm
|
||||
ENV PATH=$PATH:/root/go/bin
|
||||
|
||||
RUN mkdir /usr/share/node && cd /usr/share/node \
|
||||
&& curl "https://nodejs.org/dist/v12.16.3/node-v12.16.3-linux-$(uname -m | sed 's/86_//; s/aarch/arm/').tar.xz" | tar xJ --strip-components=1 --
|
||||
ENV PATH "$PATH:/usr/share/node/bin"
|
||||
RUN npm install -g yarn@1.22.4
|
||||
|
||||
RUN curl -L "https://github.com/mvdan/sh/releases/download/v3.0.1/shfmt_v3.0.1_linux_$(uname -m | sed 's/x86_/amd/; s/aarch64/arm/')" > /usr/local/bin/shfmt \
|
||||
&& chmod +x /usr/local/bin/shfmt
|
||||
|
||||
ENTRYPOINT ["/bin/bash", "-c"]
|
24
ci/container/exec.sh
Executable file
24
ci/container/exec.sh
Executable file
@ -0,0 +1,24 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
main() {
|
||||
cd "$(dirname "$0")/../.."
|
||||
|
||||
docker build ci/container
|
||||
imageTag="$(docker build -q ci/container)"
|
||||
docker run \
|
||||
--rm \
|
||||
-e CI \
|
||||
-e GITHUB_TOKEN \
|
||||
-e TRAVIS_TAG \
|
||||
-e NPM_TOKEN \
|
||||
-v "$(yarn cache dir):/usr/local/share/.cache/yarn/v6" \
|
||||
$(if [[ -f ~/.npmrc ]]; then echo -v "$HOME/.npmrc:/root/.npmrc"; fi) \
|
||||
-v "$PWD:/repo" \
|
||||
-w /repo \
|
||||
$(if [[ -t 0 ]]; then echo -it; fi) \
|
||||
"$imageTag" \
|
||||
"$*"
|
||||
}
|
||||
|
||||
main "$@"
|
Reference in New Issue
Block a user