Skip to content

Commit

Permalink
more deployment work
Browse files Browse the repository at this point in the history
  • Loading branch information
Jason Gauci committed Nov 30, 2019
1 parent f542a38 commit c457ba8
Show file tree
Hide file tree
Showing 8 changed files with 124 additions and 25 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ out

# Public/private keys
id_rsa*
.gnupg

# Emacs backups
*~
Expand Down
32 changes: 32 additions & 0 deletions deployment/debian.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
FROM debian:latest
LABEL maintainer="Jason Gauci ([email protected])"

WORKDIR /root
COPY ubuntu .
RUN mkdir .ssh
COPY id_rsa .ssh/
COPY id_rsa.pub .ssh/
RUN chmod ao-rwx .ssh/id_rsa
COPY ubuntu/debian_SOURCE ./debian_SOURCE

RUN apt update && apt upgrade -y && apt install -y build-essential git devscripts aptly dput jq libsodium-dev libprotobuf-dev protobuf-compiler cmake libutempter-dev debhelper dh-systemd pbuilder ubuntu-dev-tools

RUN git config --global user.email "[email protected]"
RUN git config --global user.name "Jason Gauci"

RUN echo "PBUILDERSATISFYDEPENDSCMD=/usr/lib/pbuilder/pbuilder-satisfydepends-apt" > ~/.pbuilderrc

RUN ssh-keyscan github.com >> ~/.ssh/known_hosts
RUN git clone --branch release [email protected]:MisterTea/EternalTerminal.git
RUN git clone [email protected]:MisterTea/debian-et.git
RUN mkdir -p EternalTerminal/build
WORKDIR /root/EternalTerminal/build
RUN cmake ..
RUN make -j`nproc`

RUN pbuilder-dist stretch i386 create --debootstrapopts --variant=buildd && \
pbuilder-dist stretch amd64 create --debootstrapopts --variant=buildd && \
pbuilder-dist stretch armhf create --debootstrapopts --variant=buildd && \
pbuilder-dist stretch armel create --debootstrapopts --variant=buildd

COPY debian/build_all_deb.sh .
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,4 @@ done

rsync -raz --delete --progress ~/.aptly/public/* ~/github/debian-et/debian-source/

echo "Go to ~/github/debian-et/ and push the new packages."
echo "Go to ~/debian-et/ and push the new packages."
79 changes: 75 additions & 4 deletions deployment/freebsd/Vagrantfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,75 @@
Vagrant.configure("2") do |config|
config.vm.box = "freebsd/FreeBSD-12.0-CURRENT"
config.vm.provision :shell, path: "freebsd_bootstrap.sh"
end
# -*- mode: ruby -*-
# vi: set ft=ruby :

# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant.configure("2") do |config|
# The most common configuration options are documented and commented below.
# For a complete reference, please see the online documentation at
# https://docs.vagrantup.com.

# Every Vagrant development environment requires a box. You can search for
# boxes at https://vagrantcloud.com/search.
config.vm.box = "freebsd/FreeBSD-12.1-RELEASE"
config.ssh.shell = "sh"

# Disable automatic box update checking. If you disable this, then
# boxes will only be checked for updates when the user runs
# `vagrant box outdated`. This is not recommended.
# config.vm.box_check_update = false

# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine. In the example below,
# accessing "localhost:8080" will access port 80 on the guest machine.
# NOTE: This will enable public access to the opened port
# config.vm.network "forwarded_port", guest: 80, host: 8080

# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine and only allow access
# via 127.0.0.1 to disable public access
# config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"

# Create a private network, which allows host-only access to the machine
# using a specific IP.
# config.vm.network "private_network", ip: "192.168.33.10"

# Create a public network, which generally matched to bridged network.
# Bridged networks make the machine appear as another physical device on
# your network.
# config.vm.network "public_network"

# Share an additional folder to the guest VM. The first argument is
# the path on the host to the actual folder. The second argument is
# the path on the guest to mount the folder. And the optional third
# argument is a set of non-required options.
# config.vm.synced_folder "../data", "/vagrant_data"

# Provider-specific configuration so you can fine-tune various
# backing providers for Vagrant. These expose provider-specific options.
# Example for VirtualBox:
#
# config.vm.provider "virtualbox" do |vb|
# # Display the VirtualBox GUI when booting the machine
# vb.gui = true
#
# # Customize the amount of memory on the VM:
# vb.memory = "1024"
# end
#
# View the documentation for the provider you are using for more
# information on available options.

# Enable provisioning with a shell script. Additional provisioners such as
# Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
# documentation for more information about their specific syntax and use.
config.vm.provision "shell", inline: <<-SHELL
env ASSUME_ALWAYS_YES=YES pkg install cmake ninja protobuf libsodium git
git clone --branch release [email protected]:MisterTea/EternalTerminal.git
mkdir -p EternalTerminal/build
cd EternalTerminal/build
cmake ..
make
SHELL
end
8 changes: 0 additions & 8 deletions deployment/freebsd/freebsd_bootstrap.sh

This file was deleted.

15 changes: 6 additions & 9 deletions deployment/ubuntu.Dockerfile
Original file line number Diff line number Diff line change
@@ -1,23 +1,20 @@
FROM ubuntu:latest
MAINTAINER Jason Gauci ([email protected])
LABEL maintainer="Jason Gauci ([email protected])"

WORKDIR /root
COPY ubuntu .
RUN mkdir .ssh
COPY id_rsa .ssh/
COPY id_rsa.pub .ssh/
COPY .gnupg .gnupg
COPY ubuntu/debian_SOURCE ./debian_SOURCE
RUN chmod ao-rwx .ssh/id_rsa

RUN apt update && apt upgrade && apt install -y build-essential git devscripts ubuntu-dev-tools aptly dput jq
RUN apt update && apt upgrade -y && apt install -y build-essential git devscripts ubuntu-dev-tools aptly dput jq libsodium-dev libprotobuf-dev protobuf-compiler cmake libutempter-dev debhelper dh-systemd

RUN git config --global user.email "[email protected]"
RUN git config --global user.name "Jason Gauci"

RUN echo "PBUILDERSATISFYDEPENDSCMD=/usr/lib/pbuilder/pbuilder-satisfydepends-apt" > ~/.pbuilderrc

RUN ssh-keyscan github.com >> ~/.ssh/known_hosts
RUN git clone --branch release [email protected]:MisterTea/EternalTerminal.git
RUN mkdir -p EternalTerminal/build
WORKDIR /root/EternalTerminal/build
RUN cmake ..
RUN make -j`nproc`

COPY ubuntu/deploy_ubuntu_ppa.sh .
4 changes: 2 additions & 2 deletions deployment/ubuntu/debian_SOURCE/control
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@ Source: et
Section: universe/net
Priority: optional
Maintainer: Jason Gauci <[email protected]>
Build-Depends: debhelper (>=9), libsodium-dev, libprotobuf-dev, protobuf-compiler, cmake, libgflags-dev, dh-systemd, libutempter-dev
Build-Depends: debhelper (>=9), libsodium-dev, libprotobuf-dev, protobuf-compiler, cmake, dh-systemd, libutempter-dev
Standards-Version: 3.9.7
Homepage: https://mistertea.github.io/EternalTCP/
#Vcs-Git: git://anonscm.debian.org/collab-maint/et.git
#Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/et.git

Package: et
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends}, libgcc1 (>= 1:3.3), libprotobuf-dev, libsodium-dev, libstdc++6, libtinfo5, libgflags-dev, libutempter-dev
Depends: ${misc:Depends}, ${shlibs:Depends}, libgcc1 (>= 1:3.3), libprotobuf-dev, libsodium-dev, libstdc++6, libtinfo5, libutempter-dev
Description: Remote terminal for the busy and impatient
Eternal Terminal is a remote shell that automatically reconnects without interrupting the session.
8 changes: 7 additions & 1 deletion deployment/ubuntu/deploy_ubuntu_ppa.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,13 @@ set -e

rm -Rf ./*.changes

pushd EternalTCP
wget `curl https://api.github.com/repos/mistertea/EternalTerminal/releases/latest | jq '.tarball_url' | sed 's/"//g'` -O `curl https://api.github.com/repos/mistertea/EternalTerminal/releases/latest | jq '.tag_name' | sed 's/"//g' | sed 's/et-v/et_/g' | sed 's/$/.orig.tar.gz/g'`

pushd EternalTerminal

git checkout master
git pull
git checkout `curl https://api.github.com/repos/mistertea/EternalTerminal/releases/latest | jq '.tag_name' | sed 's/"//g'`

for distro in cosmic bionic xenial artful disco; do
rm -Rf debian
Expand Down

0 comments on commit c457ba8

Please sign in to comment.