mirror of
https://github.com/CopterExpress/clover_vm.git
synced 2026-05-26 07:07:58 +00:00
travis: Enable image builds for main branch
Squashed commit of the following: commitc70fc8dd0bAuthor: Alexey Rogachevskiy <sfalexrog@gmail.com> Date: Thu Jul 9 21:26:47 2020 +0300 travis: Use proper bucket name commitd9fc21773bAuthor: Alexey Rogachevskiy <sfalexrog@gmail.com> Date: Thu Jul 9 21:14:38 2020 +0300 travis: Use S3 key stored in travis environment commit8ef93c928aAuthor: Alexey Rogachevskiy <sfalexrog@gmail.com> Date: Thu Jul 9 20:02:28 2020 +0300 travis: Set actual S3 endpoint commit848e4b33f7Author: Alexey Rogachevskiy <sfalexrog@gmail.com> Date: Thu Jul 9 18:50:41 2020 +0300 travis: Try enabling deployments commit11196f0c7dAuthor: Alexey Rogachevskiy <sfalexrog@gmail.com> Date: Thu Jul 9 17:03:44 2020 +0300 scripts: Allow apt to finish doing initial updates commit46064eafe2Author: Alexey Rogachevskiy <sfalexrog@gmail.com> Date: Sun Jul 5 22:16:18 2020 +0300 ros_ide_vm: Be even more CI-friendly commit72f35a0b04Author: Alexey Rogachevskiy <sfalexrog@gmail.com> Date: Sun Jul 5 22:05:57 2020 +0300 ros_ide_vm: Allocate less resources for build commit246ba6e5fbAuthor: Alexey Rogachevskiy <sfalexrog@gmail.com> Date: Sun Jul 5 22:04:16 2020 +0300 travis: Download base VM instead of building it commit9d2830bfebAuthor: Alexey Rogachevskiy <sfalexrog@gmail.com> Date: Sun Jul 5 20:29:26 2020 +0300 base_vm: Try building in headless mode commit31db396477Author: Alexey Rogachevskiy <sfalexrog@gmail.com> Date: Sun Jul 5 18:22:54 2020 +0300 base_vm: Use simplier hardware config commit8709ec5873Author: Alexey Rogachevskiy <sfalexrog@gmail.com> Date: Sun Jul 5 18:05:59 2020 +0300 build: Download Packer in CI environment (hack) commit691cdde431Author: Alexey Rogachevskiy <sfalexrog@gmail.com> Date: Sun Jul 5 17:58:23 2020 +0300 travis: Bump Virtualbox version commite2c6d709dbAuthor: Alexey Rogachevskiy <sfalexrog@gmail.com> Date: Sun Jul 5 17:54:11 2020 +0300 travis: Try running Packer in CI
This commit is contained in:
24
.travis.yml
Normal file
24
.travis.yml
Normal file
@@ -0,0 +1,24 @@
|
||||
language: generic
|
||||
dist: bionic
|
||||
before_install:
|
||||
- wget https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key
|
||||
add - && sudo sh -c "echo deb https://download.virtualbox.org/virtualbox/debian
|
||||
bionic contrib >> /etc/apt/sources.list" && sudo apt-get update && sudo apt-get
|
||||
install build-essential gcc make linux-headers-$(uname -r) virtualbox-6.1 && sudo
|
||||
usermod -aG vboxusers $(whoami)
|
||||
- mkdir output-virtualbox-iso && pushd output-virtualbox-iso && wget https://github.com/sfalexrog/clever_vm/releases/download/v0_base_vm/clever-devel.ova
|
||||
&& popd
|
||||
script:
|
||||
- "./build.sh"
|
||||
deploy:
|
||||
provider: s3
|
||||
access_key_id: XOJXX4IOM66XN7VZAFYX
|
||||
secret_access_key: $S3_SECRET_KEY
|
||||
bucket: clovervm
|
||||
local-dir: output-virtualbox-ovf
|
||||
upload-dir: ci-builds
|
||||
acl: public_read
|
||||
on:
|
||||
all_branches: true
|
||||
skip_cleanup: true
|
||||
endpoint: https://ams3.digitaloceanspaces.com
|
||||
@@ -13,10 +13,12 @@
|
||||
"disk_size": "30000",
|
||||
"hard_drive_interface": "sata",
|
||||
"vboxmanage": [
|
||||
["modifyvm", "{{.Name}}", "--memory", "4096", "--vram", "128", "--mouse", "usbtablet", "--accelerate3d", "on", "--apic", "on", "--rtcuseutc", "on", "--graphicscontroller", "vmsvga", "--nictype1", "virtio"],
|
||||
["modifyvm", "{{.Name}}", "--memory", "2048", "--mouse", "usbtablet", "--apic", "on", "--rtcuseutc", "on", "--nictype1", "virtio"],
|
||||
["storageattach", "{{.Name}}", "--storagectl", "SATA Controller", "--port", "0", "--nonrotational", "on", "--discard", "on"]
|
||||
],
|
||||
|
||||
"headless": "true",
|
||||
|
||||
"iso_url": "http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso",
|
||||
"iso_checksum": "bed8a55ae2a657f8349fe3271097cff3a5b8c3d1048cf258568f1601976fa30d",
|
||||
"iso_checksum_type": "sha256",
|
||||
|
||||
10
build.sh
10
build.sh
@@ -1,20 +1,22 @@
|
||||
#!/bin/bash
|
||||
|
||||
PACKER=$(which packer)
|
||||
# FIXME: Use system Packer if possible
|
||||
#PACKER=$(which packer)
|
||||
|
||||
if [ "x${PACKER}" == "x" ]; then
|
||||
#if [ "x${PACKER}" == "x" ]; then
|
||||
PACKER="./packer"
|
||||
if [ ! -f ${PACKER} ]; then
|
||||
echo "Packer not found; downloading v1.5.4 from Hashicorp"
|
||||
wget https://releases.hashicorp.com/packer/1.5.4/packer_1.5.4_linux_amd64.zip
|
||||
unzip packer_1.5.4_linux_amd64.zip
|
||||
rm packer_1.5.4_linux_amd64.zip
|
||||
PACKER="./packer"
|
||||
fi
|
||||
|
||||
echo "--- Using Packer version $(${PACKER} --version)"
|
||||
|
||||
echo "--- Building base image"
|
||||
|
||||
${PACKER} build base_vm.json
|
||||
${PACKER} build -only=virtualbox-iso base_vm.json
|
||||
|
||||
echo "--- Building extended image"
|
||||
|
||||
|
||||
@@ -13,8 +13,10 @@
|
||||
"format": "ova",
|
||||
"guest_additions_mode": "disable",
|
||||
|
||||
"headless": "true",
|
||||
|
||||
"vboxmanage": [
|
||||
["modifyvm", "{{.Name}}", "--memory", "8192", "--vram", "128", "--mouse", "usbtablet", "--rtcuseutc", "on", "--usb", "on", "--usbxhci", "on", "--nictype1", "virtio"],
|
||||
["modifyvm", "{{.Name}}", "--memory", "6144", "--vram", "128", "--mouse", "usbtablet", "--rtcuseutc", "on", "--nictype1", "virtio"],
|
||||
["storageattach", "{{.Name}}", "--storagectl", "SATA Controller", "--port", "0", "--nonrotational", "on", "--discard", "on"]
|
||||
],
|
||||
"import_opts": "importtovdi",
|
||||
|
||||
@@ -12,6 +12,9 @@ echo "--- Increasing apt retries"
|
||||
sudo -E sh -c 'echo "APT::Acquire::Retries \"3\";" > /etc/apt/apt.conf.d/80-retries'
|
||||
cat /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
echo "--- Allowing apt to perform its updates"
|
||||
sudo -E sh -c 'apt update; while fuser /var/lib/dpkg/lock ; do sleep 0.5 ; done'
|
||||
|
||||
echo "--- Installing open-vm-tools"
|
||||
|
||||
sudo -E sh -c 'apt update; apt install -y open-vm-tools open-vm-tools-desktop'
|
||||
|
||||
Reference in New Issue
Block a user