2019-03-14 11:45:49 +00:00
|
|
|
# Dockerfile for building nomad binaries
|
|
|
|
# that mimics Vagrant environment as far as required
|
|
|
|
# for building the scripts and running provision scripts
|
|
|
|
|
2020-12-08 14:55:53 +00:00
|
|
|
FROM ubuntu:18.04
|
2019-03-14 11:45:49 +00:00
|
|
|
|
|
|
|
RUN apt-get update; apt-get install -y \
|
|
|
|
apt-transport-https \
|
|
|
|
ca-certificates \
|
|
|
|
curl \
|
|
|
|
git \
|
|
|
|
sudo \
|
|
|
|
tree \
|
|
|
|
unzip \
|
|
|
|
wget
|
|
|
|
|
|
|
|
RUN useradd --create-home vagrant \
|
|
|
|
&& echo 'vagrant ALL = (ALL) NOPASSWD: ALL' >> /etc/sudoers
|
|
|
|
|
|
|
|
# install priv packages
|
2019-03-15 15:02:52 +00:00
|
|
|
COPY ./scripts/vagrant-linux-priv-config.sh /tmp/scripts/vagrant-linux-priv-config.sh
|
2019-03-14 11:45:49 +00:00
|
|
|
RUN /tmp/scripts/vagrant-linux-priv-config.sh
|
|
|
|
|
2019-03-15 15:02:52 +00:00
|
|
|
COPY ./scripts/vagrant-linux-priv-go.sh /tmp/scripts/vagrant-linux-priv-go.sh
|
2019-03-14 11:45:49 +00:00
|
|
|
RUN /tmp/scripts/vagrant-linux-priv-go.sh
|
|
|
|
|
2020-11-17 15:01:48 +00:00
|
|
|
COPY ./scripts/vagrant-linux-priv-buf.sh /tmp/scripts/vagrant-linux-priv-buf.sh
|
|
|
|
RUN /tmp/scripts/vagrant-linux-priv-buf.sh
|
2019-03-14 11:45:49 +00:00
|
|
|
|
|
|
|
USER vagrant
|
|
|
|
|
2019-03-15 15:02:52 +00:00
|
|
|
COPY ./scripts/vagrant-linux-unpriv-ui.sh /tmp/scripts/vagrant-linux-unpriv-ui.sh
|
2019-03-14 11:45:49 +00:00
|
|
|
RUN /tmp/scripts/vagrant-linux-unpriv-ui.sh
|
2020-11-13 16:33:07 +00:00
|
|
|
# avoid requiring loading nvm.sh by using a well defined path as an alias to the node version
|
|
|
|
RUN /bin/bash -c '. ~/.nvm/nvm.sh && ln -s ~/.nvm/versions/node/$(nvm current) ~/.nvm/versions/node/.default'
|
2019-03-14 11:45:49 +00:00
|
|
|
|
2019-03-15 15:02:52 +00:00
|
|
|
COPY ./scripts/release/docker-build-all /tmp/scripts/docker-build-all
|
|
|
|
|
2019-03-14 11:45:49 +00:00
|
|
|
# Update PATH with GO bin, yarn, and node
|
|
|
|
ENV GOPATH="/opt/gopath" \
|
2020-11-13 16:33:07 +00:00
|
|
|
PATH="/home/vagrant/.nvm/versions/node/.default/bin:/home/vagrant/bin:/opt/gopath/bin:/home/vagrant/.yarn/bin:/home/vagrant/.config/yarn/global/node_modules/.bin:$PATH"
|
2019-03-14 11:45:49 +00:00
|
|
|
|
|
|
|
RUN mkdir -p /opt/gopath/src/github.com/hashicorp/nomad
|
|
|
|
RUN mkdir -p /home/vagrant/bin \
|
|
|
|
&& git config --global user.email "nomad@hashicorp.com" \
|
|
|
|
&& git config --global user.name "Nomad Release Bot"
|