You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 4
Next »
Purpose of this documentationÂ
Is to help systems administrators support and maintain the script for installing the OHIE stack: "How to install DATIM4U OHIE Stack"
General References:
http://packaging.ubuntu.com/html/packaging-new-software.html
https://askubuntu.com/questions/164621/how-do-i-add-a-binary-file-to-my-existing-ppa-package
https://askubuntu.com/questions/146343/how-to-create-a-deb-package-that-installs-a-series-of-files
https://askubuntu.com/questions/33413/how-to-create-a-meta-package-that-automatically-installs-other-packages
Preliminary Requirements
- Add your
id_rsa.pub
ssh key to launchpad
Setup Vagrant
References
Install packages
sudo apt-get install virtualbox
sudo apt-get install vagrant
sudo apt-get install virtualbox-dkms
Install a Vargrant Box
- Use hashicorp to find a suitable box to install, like ubuntu/trusty64 at https://atlas.hashicorp.com/ubuntu/boxes/trusty64
- note, rest of development we will sume that we are using the ubuntu/trusty64 box from hashicorp
- navigate to a directory where you wish to store your vagrant configurations for this setup
- e.g.,
mkdir /var/www/vagrant/ && cd /var/www/vagrant/
- download and setup vagrant box:
vagrant init ubuntu/trusty64; vagrant up --provider virtualbox
Enable forwarding of SSH keys to vagrant
Create relevant provisioners
- Open the Vagrantfile for your vagrant
nano /var/www/vagrant/Vagrantfile
- Insert the following code into the Vagrant file, at the end - but before the
end
command- For provisioner that will update and upgrade your box
config.vm.provision "shell" do |s|
s.inline = <<-SHELL
sudo apt-get update && sudo apt-get -y upgrade;
echo Update and upgrade successfully provisioned [Success].
SHELL
end
- For provisioner that setup packaging environment automatically
config.vm.provision "shell" do |s|
your_launchpad_name = "Launchpad Name";
your_launchpad_email = "launchpademail@provider.com";
your_launchpad_username = "launchpadusername";
s.inline = <<-SHELL
echo Beginning provisioning of packaging environment setup.;
echo Using #{your_launchpad_name} as your name, #{your_launchpad_email} as your email, and #{your_launchpad_username} as your username....;
sudo apt-get -y install gnupg pbuilder ubuntu-dev-tools bzr-builddeb apt-file;
sudo apt-get -y install packaging-dev; # Install packaging package
echo This next part may take a little while...;
pbuilder-dist trusty create;
bzr whoami "#{your_launchpad_name} <#{your_launchpad_email}>";
bzr launchpad-login #{your_launchpad_username};
echo $'export DEBFULLNAME="#{your_launchpad_name}"\nexport DEBEMAIL="#{your_launchpad_email}"' >> ~/.bashrc;
source ~/.bashrc;
echo Packaging environment successfuly provisioned [Success].
SHELL
end
- Note: if you had run
vagrant up
before setting these provisions you will need to run vagrant reload --provision
to see changes
Create and Add a GPG key to Launchpad for your vagrant
References
Enter your vagrant box
Create a gpg key
gpg --gen-key
- select default,
1
- select default,
2048
- select default,
0
- create user id
- enter name
- enter email (ensure that this is the same email as you signed up to launchpad with or this will not work)
- enter 'comment'
- confirm user id
- press okay
- help with entropy
- this may or may not take a long time
- if it is taking a long time, try the following:
## note press ctrl-c to stop when needed, exit python by typing `exit()` after stopping
import time;
import random;
while True:
print("Increasing entropy... hopefully...\n");
print(", ".join([str(random.randint(0,100)) for i in range(random.randint(0,100))])); ## print randint randint elements
print("\n", "and sleep...");
time.sleep(0.01);
Send the key to Ubuntu registry
- send key with
gpg --send-keys --keyserver keyserver.ubuntu.com <pub_key_id>
- find it with
gpg --list- keys
(you are looking for the 8 digit pub id)- e.g., if response contained
pub 2048R/523053B5 2017-06-01
, 523053B5
is the <pub_key_id>
- e.g.,
gpg --send-keys --keyserver keyserver.ubuntu.com 523053B5
- response should be
gpg: sending key <pub_key_id> to hkp server keyserver.ubuntu.com
- you can check that ubuntu received your key with
gpg --keyserver hkp://keyserver.ubuntu.com --search-key 'your@email.com'
Import key into launchpad
- navigate to your OpenPGP keys page
- get fingerprint of your key
gpg --fingerprint
- should have form of
XXXX XXXX XXXX XXXX XXXX XXXX XXX XXXX XXXX XXXX
- copy paste the key into the launchpad input box, press import key
- open email that launchpad sent you
- decrypt the email
- copy and paste the contents into a new file
- decrypt the file with your key
- open the link contained in the decrypted email and confirm your key by pressing
continue
Congradulations
You're all done.
Preliminary Requirements
id_rsa.pub
ssh key to launchpadcat ~/.ssh/id_rsa.pub
Setup Vagrant
References
Install packages
sudo apt-get install virtualbox
sudo apt-get install vagrant
sudo apt-get install virtualbox-dkms
Install a Vargrant Box
mkdir /var/www/vagrant/ && cd /var/www/vagrant/
vagrant init ubuntu/trusty64; vagrant up --provider virtualbox
Enable forwarding of SSH keys to vagrant
nano /var/www/vagrant/Vagrantfile
end
command~/.ssh/config
file to enable agent forwarding to localhostnano ~/.ssh/config
ssh -T git@github.com
Create relevant provisioners
nano /var/www/vagrant/Vagrantfile
end
commandvagrant up
before setting these provisions you will need to runvagrant reload --provision
to see changesCreate and Add a GPG key to Launchpad for your vagrant
References
Enter your vagrant box
vagrant up; vagrant ssh;
Create a gpg key
gpg --gen-key
1
2048
0
sudo apt-get install rng-tools
, per https://stackoverflow.com/a/12716881/3068233python3
codeSend the key to Ubuntu registry
gpg --send-keys --keyserver keyserver.ubuntu.com <pub_key_id>
gpg --list- keys
(you are looking for the 8 digit pub id)pub 2048R/523053B5 2017-06-01
,523053B5
is the<pub_key_id>
gpg --send-keys --keyserver keyserver.ubuntu.com 523053B5
gpg: sending key <pub_key_id> to hkp server keyserver.ubuntu.com
gpg --keyserver hkp://keyserver.ubuntu.com --search-key 'your@email.com'
Import key into launchpad
gpg --fingerprint
XXXX XXXX XXXX XXXX XXXX XXXX XXX XXXX XXXX XXXX
nano email.gpg
gpg -d email.gpg
continue
Congradulations
You're all done.