cleaned up, etc.
This commit is contained in:
@@ -1,104 +0,0 @@
|
||||
###########################################################
|
||||
## BUILD.CONF SAMPLE FILE ##
|
||||
###########################################################
|
||||
#
|
||||
# This file is used to define various variables/settings
|
||||
# used by the build script.
|
||||
#
|
||||
# For full (perhaps overly-verbose ;) documentation, please
|
||||
# see:
|
||||
# https://bdisk.square-r00t.net/#_the_code_build_ini_code_file
|
||||
# Or simply refer to the section titled "The build.ini File"
|
||||
# in the user manual.
|
||||
|
||||
[bdisk]
|
||||
name = AIF
|
||||
uxname = aif
|
||||
pname = AIF-NG
|
||||
ver = 1.00
|
||||
dev = r00t^2
|
||||
email = bts@square-r00t.net
|
||||
desc = See https://aif.square-r00t.net/
|
||||
uri = https://aif.square-r00t.net/
|
||||
root_password = BLANK
|
||||
user = no
|
||||
|
||||
[user]
|
||||
username = ${bdisk:uxname}
|
||||
name = Default user
|
||||
password = BLANK
|
||||
|
||||
[source_x86_64]
|
||||
mirror = mirror.us.leaseweb.net
|
||||
#mirrorproto = https
|
||||
mirrorproto = http
|
||||
mirrorpath = /archlinux/iso/latest/
|
||||
mirrorfile =
|
||||
mirrorchksum = ${mirrorpath}sha1sums.txt
|
||||
chksumtype = sha1
|
||||
mirrorgpgsig = .sig
|
||||
gpgkey = 4AA4767BBC9C4B1D18AE28B77F2D434B9741E8AC
|
||||
gpgkeyserver =
|
||||
|
||||
[source_i686]
|
||||
mirror = mirror.us.leaseweb.net
|
||||
#mirrorproto = https
|
||||
mirrorproto = http
|
||||
mirrorpath = /archlinux/iso/latest/
|
||||
mirrorfile =
|
||||
mirrorchksum = ${mirrorpath}sha1sums.txt
|
||||
chksumtype = sha1
|
||||
mirrorgpgsig = .sig
|
||||
gpgkey = 7F2D434B9741E8AC
|
||||
gpgkeyserver =
|
||||
|
||||
[build]
|
||||
gpg = yes
|
||||
dlpath = /var/tmp/${bdisk:uxname}
|
||||
chrootdir = /var/tmp/chroots
|
||||
basedir = /opt/dev/bdisk
|
||||
isodir = ${dlpath}/iso
|
||||
srcdir = ${dlpath}/src
|
||||
prepdir = ${dlpath}/temp
|
||||
archboot = ${prepdir}/${bdisk:name}
|
||||
mountpt = /mnt/${bdisk:uxname}
|
||||
multiarch = 64
|
||||
sign = yes
|
||||
ipxe = yes
|
||||
i_am_a_racecar = yes
|
||||
|
||||
[gpg]
|
||||
mygpgkey = 748231EBCBD808A14F5E85D28C004C2F93481F6B
|
||||
mygpghome = /root/.gnupg
|
||||
|
||||
[sync]
|
||||
http = yes
|
||||
tftp = yes
|
||||
git = no
|
||||
rsync = no
|
||||
|
||||
[http]
|
||||
path = ${build:dlpath}/http
|
||||
user = root
|
||||
group = root
|
||||
|
||||
[tftp]
|
||||
path = ${build:dlpath}/tftpboot
|
||||
user = root
|
||||
group = root
|
||||
|
||||
[ipxe]
|
||||
iso = yes
|
||||
uri = https://aif.square-r00t.net/boot.ipxe
|
||||
ssldir = ${build:dlpath}/ssl
|
||||
ssl_ca = ${ssldir}/ca.crt
|
||||
ssl_cakey = ${ssldir}/ca.key
|
||||
ssl_crt = ${ssldir}/main.crt
|
||||
ssl_key = ${ssldir}/main.key
|
||||
|
||||
[rsync]
|
||||
#host = 10.1.1.1
|
||||
host = bdisk.square-r00t.net
|
||||
user = root
|
||||
path = /srv/http/bdisk_ipxe
|
||||
iso = yes
|
||||
@@ -1,208 +0,0 @@
|
||||
#!/usr/bin/expect -f
|
||||
|
||||
log_file -noappend /tmp/expect.log
|
||||
set force_conservative 0 ;# set to 1 to force conservative mode even if
|
||||
;# script wasn't run conservatively originally
|
||||
if {$force_conservative} {
|
||||
set send_slow {1 .1}
|
||||
proc send {ignore arg} {
|
||||
sleep .1
|
||||
exp_send -s -- $arg
|
||||
}
|
||||
}
|
||||
|
||||
#set send_slow {10 .001}
|
||||
|
||||
set timeout -1
|
||||
#spawn ./aif-config.py create -v:r -f /tmp/aif.xml
|
||||
spawn ./aif-config.py create -v -f /tmp/aif.xml
|
||||
## disks
|
||||
send -- "/dev/sda,/dev/sdb\r"
|
||||
# sda
|
||||
send -- "gpt\r"
|
||||
send -- "2\r"
|
||||
# sda1
|
||||
send -- "0%\r"
|
||||
send -- "95%\r"
|
||||
send -- "8300\r"
|
||||
# sda2
|
||||
send -- "95%\r"
|
||||
send -- "100%\r"
|
||||
send -- "ef00\r"
|
||||
# sdb
|
||||
send -- "gpt\r"
|
||||
send -- "3\r"
|
||||
# sdb1
|
||||
send -- "0%\r"
|
||||
send -- "47%\r"
|
||||
send -- "8300\r"
|
||||
# sdb2
|
||||
send -- "47%\r"
|
||||
send -- "95%\r"
|
||||
send -- "8300\r"
|
||||
# sdb3
|
||||
send -- "95%\r"
|
||||
send -- "100%\r"
|
||||
send -- "8200\r"
|
||||
## mounts
|
||||
send -- "/mnt/aif,/mnt/aif/boot,/mnt/aif/home,/mnt/aif/mnt/data,swap\r"
|
||||
# /mnt/aif
|
||||
send -- "/dev/sda1\r"
|
||||
send -- "1\r"
|
||||
send -- "ext4\r"
|
||||
send -- "defaults\r"
|
||||
# /mnt/aif/boot
|
||||
send -- "/dev/sda2\r"
|
||||
send -- "2\r"
|
||||
send -- "vfat\r"
|
||||
send -- "rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro\r"
|
||||
# /mnt/aif/home
|
||||
send -- "/dev/sdb1\r"
|
||||
send -- "3\r"
|
||||
send -- "ext4\r"
|
||||
send -- "defaults\r"
|
||||
# /mnt/aif/mnt/data
|
||||
send -- "/dev/sdb2\r"
|
||||
send -- "4\r"
|
||||
send -- "ext4\r"
|
||||
send -- "defaults\r"
|
||||
# swap
|
||||
send -- "/dev/sdb3\r"
|
||||
send -- "5\r"
|
||||
## network
|
||||
# hostname
|
||||
send -- "aif.loc.lan\r"
|
||||
# interface
|
||||
send -- "ens3\r"
|
||||
send -- "auto\r"
|
||||
send -- "ipv4\r"
|
||||
# add another interface?
|
||||
send -- "y\r"
|
||||
# second interface
|
||||
send -- "ens4\r"
|
||||
send -- "192.168.1.2/24\r"
|
||||
send -- "192.168.1.1\r"
|
||||
send -- "4.2.2.1,4.2.2.2\r"
|
||||
# add another interface? default is no
|
||||
send -- "\r"
|
||||
## system
|
||||
# timezone (default is UTC)
|
||||
send -- "\r"
|
||||
# locale (default is en_US.UTF-8
|
||||
send -- "\r"
|
||||
# chroot path
|
||||
send -- "/mnt/aif\r"
|
||||
# kbd (default is US)
|
||||
send -- "\r"
|
||||
# reboot host after install? default is yes
|
||||
send -- "\r"
|
||||
# root password
|
||||
sleep 2
|
||||
send -- "test\r"
|
||||
sleep 2
|
||||
expect *
|
||||
# add user?
|
||||
send -- "y\r"
|
||||
# user
|
||||
send -- "aifusr\r"
|
||||
# sudo access
|
||||
send -- "y\r"
|
||||
# password
|
||||
sleep 2
|
||||
send -- "test\r"
|
||||
sleep 2
|
||||
send -- "A Test User\r"
|
||||
# uid (default is autogen)
|
||||
send -- "\r"
|
||||
# primary group (default is autogen'd based on username)
|
||||
send -- "\r"
|
||||
# home dir (default is e.g. /home/username)
|
||||
send -- "\r"
|
||||
# add exta groups?
|
||||
send -- "y\r"
|
||||
# extra group
|
||||
send -- "users\r"
|
||||
# need to be created? default is no
|
||||
send -- "\r"
|
||||
# add another extra group? default is no
|
||||
send -- "\r"
|
||||
# add more users? default is no
|
||||
send -- "\r"
|
||||
# enable/disable services
|
||||
send -- "y\r"
|
||||
# service
|
||||
send -- "sshd\r"
|
||||
# enable? default is yes
|
||||
send -- "\r"
|
||||
# manage another service? default is no
|
||||
send -- "\r"
|
||||
# packager (default is pacman)
|
||||
send -- "\r"
|
||||
# review default repos? default is yes
|
||||
send -- "\r"
|
||||
# edit any of them?
|
||||
send -- "y\r"
|
||||
# edit the 6th repo (multilib)
|
||||
send -- "6\r"
|
||||
# enabled?
|
||||
send -- "y\r"
|
||||
# siglevel (default is unchanged)
|
||||
send -- "\r"
|
||||
# mirror URI (default is unchanged)
|
||||
send -- "\r"
|
||||
# edit another repo? default is no
|
||||
send -- "\r"
|
||||
# add additional repositories? default is no
|
||||
send -- "\r"
|
||||
# modify default mirrorlist?
|
||||
send -- "y\r"
|
||||
# URI for mirror
|
||||
send -- "http://mirrors.advancedhosters.com/archlinux/\$repo/os/\$arch\r"
|
||||
# add another?
|
||||
send -- "y\r"
|
||||
send -- "http://mirror.us.leaseweb.net/archlinux/\$repo/os/\$arch\r"
|
||||
send -- "y\r"
|
||||
send -- "http://arch.mirror.constant.com/\$repo/os/\$arch\r"
|
||||
send -- "y\r"
|
||||
send -- "http://mirror.vtti.vt.edu/archlinux/\$repo/os/\$arch\r"
|
||||
send -- "y\r"
|
||||
send -- "http://arch.mirrors.pair.com/\$repo/os/\$arch\r"
|
||||
send -- "y\r"
|
||||
send -- "http://mirror.yellowfiber.net/archlinux/\$repo/os/\$arch\r"
|
||||
send -- "\r"
|
||||
# install extra software?
|
||||
send -- "y\r"
|
||||
# software
|
||||
send -- "openssh\r"
|
||||
# repository (optional)
|
||||
send -- "\r"
|
||||
# add another package?
|
||||
send -- "\r"
|
||||
# bootloader (default is grub)
|
||||
send -- "\r"
|
||||
# system supports UEFI? default is yes
|
||||
send -- "\r"
|
||||
# ESP/EFI system partition
|
||||
send -- "/boot\r"
|
||||
# any hook scripts? default is no
|
||||
send -- "y\r"
|
||||
# pre, pkg, or post
|
||||
send -- "post\r"
|
||||
# script URI
|
||||
send -- "https://aif.square-r00t.net/sample-scripts/post/first.sh\r"
|
||||
# order for the execution run
|
||||
send -- "1\r"
|
||||
# auth required?
|
||||
send -- "y\r"
|
||||
# basic/digest? default is basic
|
||||
send -- "digest\r"
|
||||
# if digest, realm
|
||||
send -- "realmname\r"
|
||||
# user
|
||||
send -- "test\r"
|
||||
# password
|
||||
send -- "password\r"
|
||||
# would you like to add another script? default is no
|
||||
send -- "\r"
|
||||
interact
|
||||
expect eof
|
||||
@@ -1,49 +0,0 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import argparse
|
||||
import json
|
||||
import os
|
||||
import pprint
|
||||
#import re
|
||||
try:
|
||||
import yaml
|
||||
except:
|
||||
exit('You need pyYAML.')
|
||||
|
||||
def parseArgs():
|
||||
args = argparse.ArgumentParser()
|
||||
args.add_argument('-i',
|
||||
'--in',
|
||||
dest = 'infile',
|
||||
required = True,
|
||||
help = 'The plaintext representation of a python dict')
|
||||
args.add_argument('-o',
|
||||
'--out',
|
||||
dest = 'outfile',
|
||||
required = True,
|
||||
help = 'The JSON file to create')
|
||||
return(args)
|
||||
|
||||
def main():
|
||||
args = vars(parseArgs().parse_args())
|
||||
infile = os.path.abspath(os.path.normpath(args['infile']))
|
||||
outfile = os.path.abspath(os.path.normpath(args['outfile']))
|
||||
if not os.path.lexists(infile):
|
||||
exit('Input file doesn\'t exist.')
|
||||
#try:
|
||||
with open(outfile, 'w') as outgoing:
|
||||
with open(infile, 'r') as incoming:
|
||||
#data = re.sub("'", '"', incoming.read())
|
||||
#outgoing.write(data)
|
||||
#d = json.dumps(data, ensure_ascii = False)
|
||||
#d = json.dumps(incoming.read().replace("'", '"'))
|
||||
d = yaml.load(incoming.read())
|
||||
pprint.pprint(d)
|
||||
j = json.dumps(d, indent = 4)
|
||||
outgoing.write(j)
|
||||
#except:
|
||||
#exit('Error when trying to read/write file(s).')
|
||||
return()
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
Reference in New Issue
Block a user