summaryrefslogtreecommitdiffstats
path: root/kiwi
diff options
context:
space:
mode:
authorSuren A. Chilingaryan <csa@suren.me>2019-10-05 07:15:42 +0200
committerSuren A. Chilingaryan <csa@suren.me>2019-10-05 07:15:42 +0200
commit5374bef630025b10478f0c234b4e37fc29b3be93 (patch)
tree2bb20832db5bfee52f9d2a8876975b396a164bea /kiwi
parenteb8382d4dc76d5b3dcda1290f74e71989feae83a (diff)
downloadadei-5374bef630025b10478f0c234b4e37fc29b3be93.tar.gz
adei-5374bef630025b10478f0c234b4e37fc29b3be93.tar.bz2
adei-5374bef630025b10478f0c234b4e37fc29b3be93.tar.xz
adei-5374bef630025b10478f0c234b4e37fc29b3be93.zip
Mini-version for CronJobs based on kiwi image (first try)
Diffstat (limited to 'kiwi')
-rw-r--r--kiwi/Makefile19
-rw-r--r--kiwi/adei/Dicefile3
-rw-r--r--kiwi/adei/config.sh105
-rw-r--r--kiwi/adei/config.xml54
-rw-r--r--kiwi/adei/config.xml.save41
5 files changed, 222 insertions, 0 deletions
diff --git a/kiwi/Makefile b/kiwi/Makefile
new file mode 100644
index 0000000..f8f7497
--- /dev/null
+++ b/kiwi/Makefile
@@ -0,0 +1,19 @@
+all: build/microadei.x86_64-0.10.1.docker.tar.xz
+install: push
+
+build/microadei.x86_64-0.10.1.docker.tar.xz: adei/config.xml adei/config.sh
+ rm -rf build/*
+ kiwi --type docker system build --description adei/ --target-dir ./build/
+ du -sm build/build
+
+import: build/microadei.x86_64-0.10.1.docker.tar.xz
+ docker load < build/microadei.x86_64-0.10.1.docker.tar.xz
+
+push: import
+ docker push chsa/microadei:latest
+
+clean:
+ rm -rf build/*
+
+run:
+ docker run -it chsa/microadei:latest /bin/bash
diff --git a/kiwi/adei/Dicefile b/kiwi/adei/Dicefile
new file mode 100644
index 0000000..d335c88
--- /dev/null
+++ b/kiwi/adei/Dicefile
@@ -0,0 +1,3 @@
+Dice.configure do |config|
+ config.buildhost = :DOCKER
+end
diff --git a/kiwi/adei/config.sh b/kiwi/adei/config.sh
new file mode 100644
index 0000000..57075fc
--- /dev/null
+++ b/kiwi/adei/config.sh
@@ -0,0 +1,105 @@
+#!/bin/bash
+#================
+# FILE : config.sh
+#----------------
+# PROJECT : OpenSuSE KIWI Image System
+# COPYRIGHT : (c) 2013 SUSE LLC
+# :
+# AUTHOR : Robert Schweikert <rjschwei@suse.com>
+# :
+# BELONGS TO : Operating System images
+# :
+# DESCRIPTION : configuration script for SUSE based
+# : operating systems
+# :
+# :
+# STATUS : BETA
+#----------------
+#======================================
+# Functions...
+#--------------------------------------
+test -f /.kconfig && . /.kconfig
+test -f /.profile && . /.profile
+
+#======================================
+# Greeting...
+#--------------------------------------
+echo "Configure image: [$kiwi_iname]..."
+
+#======================================
+# Setup baseproduct link
+#--------------------------------------
+suseSetupProduct
+
+#======================================
+# SuSEconfig
+#--------------------------------------
+suseConfig
+
+#======================================
+# Import repositories' keys
+#--------------------------------------
+suseImportBuildKey
+
+#======================================
+# Umount kernel filesystems
+#--------------------------------------
+baseCleanMount
+
+#======================================
+# Add repositories
+#--------------------------------------
+case $( arch ) in
+ x86_64 ) echo "Adding repos for x86_64"
+ zypper ar --refresh -K \
+ http://download.opensuse.org/distribution/leap/42.3/repo/oss/suse/ "OSS"
+ zypper ar --refresh -K \
+ http://download.opensuse.org/update/leap/42.3/oss/ "OSS Update"
+ zypper ar --refresh -K \
+ http://download.opensuse.org/distribution/leap/42.3/repo/non-oss/suse/ "NON OSS"
+ zypper ar --refresh -K \
+ http://download.opensuse.org/update/leap/42.3/non-oss/ "NON OSS Update"
+ ;;
+ aarch64 ) echo "Adding repo for aarch64"
+ zypper ar --refresh -K \
+ http://download.opensuse.org/ports/aarch64/distribution/leap/42.3/repo/oss/ "OSS"
+ zypper ar --refresh -K \
+ http://download.opensuse.org/ports/aarch64/distribution/leap/42.3/repo/oss/ "OSS Update"
+ ;;
+ ppc64le ) echo "Adding repo for ppc64le"
+ zypper ar --refresh -K \
+ http://download.opensuse.org/ports/ppc/distribution/leap/42.3/repo/oss/ "OSS"
+ zypper ar --refresh -K \
+ http://download.opensuse.org/ports/update/42.3/oss/ "OSS Update"
+ ;;
+ * ) echo "No repos for $arch"
+ ;;
+esac
+
+#======================================
+# Disable recommends
+#--------------------------------------
+sed -i 's/.*solver.onlyRequires.*/solver.onlyRequires = true/g' /etc/zypp/zypp.conf
+
+#======================================
+# Remove locale files
+#--------------------------------------
+(cd /usr/share/locale && find -name '*.mo' | xargs rm)
+
+# Remove zypp uuid (bsc#1098535)
+rm -f /var/lib/zypp/AnonymousUniqueId
+# Systemd generates this in %post, remove it
+rm -f /etc/machine-id
+
+# DS, this is called before 'delete' configured in 'config.xml'. So, we can't clean if removing from there
+rpm -e --nodeps dbus-1 dracut fipscheck libfipscheck1 kbd kmod kmod-compat pinentry pkg-config exim \
+ udev systemd systemd-sysvinit logrotate device-mapper libcryptsetup4 libdb-4_8 \
+ cracklib cracklib-dict-full libcrack2 pam pam-config shadow util-linux aaa_base netcfg \
+ ca-certificates openSUSE-build-key dirmngr perl-base insserv-compat \
+ gpg2 openssl libncurses6 file file-magic libmagic1 libsolv-tools suse-module-tools \
+ libzypp zypper rpm
+
+find . -name *.rpmsave -delete
+rm -rf /var/lib/rpm
+
+exit 0
diff --git a/kiwi/adei/config.xml b/kiwi/adei/config.xml
new file mode 100644
index 0000000..6122ab0
--- /dev/null
+++ b/kiwi/adei/config.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<image schemaversion="6.5" name="microadei">
+ <description type="system">
+ <author>Suren A. Chilingaryan</author>
+ <contact>csa@suren.me</contact>
+ <specification>Minimal ADEI container</specification>
+ </description>
+ <preferences>
+ <type image="docker">
+ <containerconfig
+ name="chsa/microadei"
+ tag="latest"
+ maintainer="Suren A. Chilingaryan"/>
+ </type>
+ <version>0.10.1</version>
+ <packagemanager>zypper</packagemanager>
+ <rpm-check-signatures>false</rpm-check-signatures>
+ <rpm-force>true</rpm-force>
+ <rpm-excludedocs>true</rpm-excludedocs>
+ <locale>en_US</locale>
+ <keytable>us.map.gz</keytable>
+ <hwclock>utc</hwclock>
+ </preferences>
+ <users>
+ <user home="/root" name="root" groups="root"/>
+ </users>
+ <repository type="rpm-md" alias="kiwi" priority="1">
+ <source path="obs://Virtualization:Appliances:Builder/openSUSE_Leap_42.3"/>
+ </repository>
+ <repository type="rpm-md" alias="Leap_42_3" imageinclude="true">
+ <source path="obs://openSUSE:Leap:42.3/standard"/>
+ </repository>
+ <repository type="rpm-md" alias="ADEI" imageinclude="true">
+ <source path="obs://home:/csa7fff:/adei/openSUSE_Leap_42.3/"/>
+ </repository>
+
+ <packages type="bootstrap">
+ <package name="udev"/>
+ <package name="filesystem"/>
+ <package name="ca-certificates"/>
+ <package name="openSUSE-release"/>
+ <package name="krb5-mini"/>
+ </packages>
+ <packages type="image">
+ <package name="coreutils"/>
+ <package name="iputils"/>
+ <package name="openSUSE-build-key"/>
+ <package name="openSUSE-release"/>
+ <package name="openSUSE-release-ftp"/>
+ <package name="adei-req-cron"/>
+ <package name="adei-req-mssql"/>
+ </packages>
+</image>
diff --git a/kiwi/adei/config.xml.save b/kiwi/adei/config.xml.save
new file mode 100644
index 0000000..a55ba45
--- /dev/null
+++ b/kiwi/adei/config.xml.save
@@ -0,0 +1,41 @@
+ <packages type="delete">
+ <package name="dbus-1"/>
+ <package name="dracut"/>
+ <package name="fipscheck"/>
+ <package name="glibc-locale"/>
+ <package name="kbd"/>
+ <package name="kmod"/>
+ <package name="pinentry"/>
+ <package name="pkg-config"/>
+ <package name="sg3_utils"/>
+ <package name="systemd"/>
+ <package name="systemd-sysvinit"/>
+ <package name="logrotate"/>
+ <package name="device-mapper"/>
+ <package name="libcryptsetup4"/>
+ <package name="exim"/>
+ <package name="udev"/>
+ <package name="cracklib"/>
+ <package name="cracklib-dict-full"/>
+ <package name="libcrack2"/>
+ <package name="pam"/>
+ <package name="pam-config"/>
+ <package name="shadow"/>
+ <package name="util-linux"/>
+ <package name="aaa_base"/>
+ <package name="netcfg"/>
+ <package name="ca-certificates"/>
+ <package name="ca-certificates-mozilla"/>
+ <package name="openSUSE-build-key"/>
+ <package name="dirmngr"/>
+ <package name="gpg2"/>
+ <package name="openssl"/>
+ <package name="libncurses6"/>
+ <package name="file"/>
+ <package name="file-magic"/>
+ <package name="libmagic1"/>
+ <package name="libsolv-tools"/>
+ <package name="suse-module-tools"/>
+ <package name="perl-base"/>
+ <package name="insserv-compat"/>
+ </packages>