Add release.conf.
This commit is contained in:
parent
d20ce1e4d4
commit
44d3cc61f5
@ -30,6 +30,14 @@
|
|||||||
# - src: foo.conf
|
# - src: foo.conf
|
||||||
# dest: /usr/local/etc/foo.conf
|
# dest: /usr/local/etc/foo.conf
|
||||||
|
|
||||||
|
# - name: Clone Source
|
||||||
|
# git:
|
||||||
|
# repo: "https://foo.bar/baz.git"
|
||||||
|
# dest: /foo/bar
|
||||||
|
# version: "v1.0.2"
|
||||||
|
# force: true
|
||||||
|
# diff: false
|
||||||
|
|
||||||
- import_tasks: tasks/freebsd.yaml
|
- import_tasks: tasks/freebsd.yaml
|
||||||
when: 'os_flavor == "freebsd"'
|
when: 'os_flavor == "freebsd"'
|
||||||
|
|
||||||
|
15
ansible/roles/freebsd_update_server/files/build_release.bash
Normal file
15
ansible/roles/freebsd_update_server/files/build_release.bash
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
set -euo pipefail
|
||||||
|
IFS=$'\n\t'
|
||||||
|
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||||
|
|
||||||
|
function main {
|
||||||
|
build_release
|
||||||
|
}
|
||||||
|
|
||||||
|
function build_release {
|
||||||
|
/usr/src/release/release.sh -c /opt/freebsd_update_server/release.conf
|
||||||
|
}
|
||||||
|
|
||||||
|
main "${@}"
|
118
ansible/roles/freebsd_update_server/files/release.conf
Normal file
118
ansible/roles/freebsd_update_server/files/release.conf
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
|
||||||
|
## Redefine environment variables here to override prototypes
|
||||||
|
## defined in release.sh.
|
||||||
|
#load_chroot_env() { }
|
||||||
|
#load_target_env() { }
|
||||||
|
#buildenv_setup() { }
|
||||||
|
|
||||||
|
## Set the directory within which the release will be built.
|
||||||
|
CHROOTDIR="/scratch"
|
||||||
|
|
||||||
|
## Do not explicitly require the devel/git port to be installed.
|
||||||
|
#NOGIT=1
|
||||||
|
## Set the version control system host.
|
||||||
|
GITROOT="https://git.freebsd.org/"
|
||||||
|
GITSRC="src.git"
|
||||||
|
GITPORTS="ports.git"
|
||||||
|
|
||||||
|
## Set the src/, ports/, and doc/ branches or tags.
|
||||||
|
#SRCBRANCH="stable/13"
|
||||||
|
SRCBRANCH="main"
|
||||||
|
PORTBRANCH="main"
|
||||||
|
|
||||||
|
## Sample configuration for using git from ports.
|
||||||
|
#GITCMD="/usr/local/bin/git clone -q --branch main"
|
||||||
|
|
||||||
|
## Set to override the default target architecture.
|
||||||
|
#TARGET="amd64"
|
||||||
|
#TARGET_ARCH="amd64"
|
||||||
|
#KERNEL="GENERIC"
|
||||||
|
KERNEL="GENERIC-NODEBUG"
|
||||||
|
## Multiple kernels may be set.
|
||||||
|
#KERNEL="GENERIC XENHVM"
|
||||||
|
|
||||||
|
## Set to specify a custom make.conf and/or src.conf
|
||||||
|
#MAKE_CONF="/etc/local/make.conf"
|
||||||
|
#SRC_CONF="/etc/local/src.conf"
|
||||||
|
|
||||||
|
## Set to use make(1) flags.
|
||||||
|
#MAKE_FLAGS="-s"
|
||||||
|
|
||||||
|
## Set to use world- and kernel-specific make(1) flags.
|
||||||
|
#WORLD_FLAGS="-j $(sysctl -n hw.ncpu)"
|
||||||
|
#KERNEL_FLAGS="-j $(( $(( $(sysctl -n hw.ncpu) + 1 )) / 2 ))"
|
||||||
|
|
||||||
|
## Set miscellaneous 'make release' settings.
|
||||||
|
#NOPORTS=
|
||||||
|
#NOSRC=
|
||||||
|
#WITH_DVD=
|
||||||
|
#WITH_COMPRESSED_IMAGES=
|
||||||
|
|
||||||
|
## Set to '1' to disable multi-threaded xz(1) compression.
|
||||||
|
#XZ_THREADS=0
|
||||||
|
|
||||||
|
## Set when building embedded images.
|
||||||
|
#EMBEDDEDBUILD=
|
||||||
|
|
||||||
|
## Set to a list of ports required to build embedded system-on-chip
|
||||||
|
## images, such as sysutils/u-boot-rpi.
|
||||||
|
#EMBEDDEDPORTS=
|
||||||
|
|
||||||
|
## Set to the hardware platform of the target userland. This value
|
||||||
|
## is passed to make(1) to set the TARGET (value of uname -m) to cross
|
||||||
|
## build.
|
||||||
|
#EMBEDDED_TARGET=
|
||||||
|
|
||||||
|
## Set to the machine processor architecture of the target userland.
|
||||||
|
## This value is passed to make(1) to set the TARGET_ARCH (value of uname -p)
|
||||||
|
## to cross build.
|
||||||
|
#EMBEDDED_TARGET_ARCH=
|
||||||
|
|
||||||
|
## Set to skip the chroot environment buildworld/installworld/distribution
|
||||||
|
## step if it is expected the build environment will exist via alternate
|
||||||
|
## means.
|
||||||
|
#CHROOTBUILD_SKIP=
|
||||||
|
|
||||||
|
## Set to a non-empty value skip checkout or update of /usr/src in
|
||||||
|
## the chroot. This is intended for use when /usr/src already exists.
|
||||||
|
#SRC_UPDATE_SKIP=
|
||||||
|
|
||||||
|
## Set to a non-empty value skip checkout or update of /usr/ports in
|
||||||
|
## the chroot. This is intended for use when /usr/ports already exists.
|
||||||
|
#PORTS_UPDATE_SKIP=
|
||||||
|
|
||||||
|
## Set to pass additional flags to make(1) for the build chroot setup, such
|
||||||
|
## as TARGET/TARGET_ARCH.
|
||||||
|
#CHROOT_MAKEENV=
|
||||||
|
|
||||||
|
## Set to a non-empty value to build virtual machine images as part of the
|
||||||
|
## release build.
|
||||||
|
#WITH_VMIMAGES=
|
||||||
|
|
||||||
|
## Set to a non-empty value to compress virtual machine images with xz(1)
|
||||||
|
## as part of the release build.
|
||||||
|
#WITH_COMPRESSED_VMIMAGES=
|
||||||
|
|
||||||
|
## If WITH_VMIMAGES is set to a non-empty value, this is the name of the
|
||||||
|
## file to use for the installed userland/kernel.
|
||||||
|
#VMBASE="vm"
|
||||||
|
|
||||||
|
## If WITH_VMIMAGES is set to a non-empty value, this is the size of the
|
||||||
|
## virtual machine disk filesystem. Valid size values are described in
|
||||||
|
## the makefs(8) manual page.
|
||||||
|
#VMSIZE="20g"
|
||||||
|
|
||||||
|
## If WITH_VMIMAGES is set to a non-empty value, this is a list of disk
|
||||||
|
## image formats to create. Valid values are listed in the mkimg(1)
|
||||||
|
## manual page, as well as 'mkimg --formats' output.
|
||||||
|
#VMFORMATS="vhdf vmdk qcow2 raw"
|
||||||
|
|
||||||
|
## Set to a non-empty value to build virtual machine images for various
|
||||||
|
## cloud providers as part of the release build.
|
||||||
|
#WITH_CLOUDWARE=
|
||||||
|
|
||||||
|
## If WITH_CLOUDWARE is set to a non-empty value, this is a list of providers
|
||||||
|
## to create disk images.
|
||||||
|
#CLOUDWARE="EC2 GCE VAGRANT-VIRTUALBOX VAGRANT-VMWARE"
|
@ -1,5 +1,5 @@
|
|||||||
- import_tasks: tasks/freebsd.yaml
|
- import_tasks: tasks/freebsd.yaml
|
||||||
when: 'os_flavor == "freebsd"'
|
when: 'os_flavor == "freebsd" and build_user is defined'
|
||||||
|
|
||||||
- import_tasks: tasks/linux.yaml
|
- import_tasks: tasks/linux.yaml
|
||||||
when: 'os_flavor == "linux"'
|
when: 'os_flavor == "linux"'
|
||||||
|
@ -23,3 +23,25 @@
|
|||||||
become: true
|
become: true
|
||||||
become_user: "{{ build_user.name }}"
|
become_user: "{{ build_user.name }}"
|
||||||
diff: false
|
diff: false
|
||||||
|
|
||||||
|
- name: Install Configuration
|
||||||
|
copy:
|
||||||
|
src: "files/{{ item.src }}"
|
||||||
|
dest: "{{ item.dest }}"
|
||||||
|
mode: 0600
|
||||||
|
owner: "{{ build_user.name }}"
|
||||||
|
group: "{{ build_user.group }}"
|
||||||
|
loop:
|
||||||
|
- src: release.conf
|
||||||
|
dest: /opt/freebsd_update_server/release.conf
|
||||||
|
|
||||||
|
- name: Install scripts
|
||||||
|
copy:
|
||||||
|
src: "files/{{ item.src }}"
|
||||||
|
dest: "{{ item.dest }}"
|
||||||
|
mode: 0755
|
||||||
|
owner: root
|
||||||
|
group: wheel
|
||||||
|
loop:
|
||||||
|
- src: build_release.bash
|
||||||
|
dest: /usr/local/bin/build_release
|
||||||
|
Loading…
x
Reference in New Issue
Block a user