Code Monkey home page Code Monkey logo

packer-boxes's Issues

missing equals sign in user directive of ks.cfg

In the kickstart file you have a work around.

https://github.com/geerlingguy/packer-boxes/blob/master/centos8/http/ks.cfg

# Add vagrant user (user directive isn't working for some reason).
useradd vagrant
echo "vagrant" | passwd vagrant --stdin
usermod -a -G wheel vagrant

Your user directive is

#user --name=vagrant --plaintext --password vagrant --groups=wheel

I think you might be missing an equals sign, password seems to work for me in centos7 if I do this

--password=vagrant

The docs seem to say that also.

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/performing_an_advanced_rhel_installation/kickstart-commands-and-options-reference_installing-rhel-as-an-experienced-user

B.3.16. user

The user Kickstart command is optional. It creates a new user on the system.

Syntax

user --name=username [OPTIONS]

Mandatory options

--name= - Provides the name of the user. This option is required. 

Optional options

--password= - The new user’s password. If not provided, the account will be locked by default.

--iscrypted - If this option is present, the password argument is assumed to already be encrypted. This option is mutually exclusive with --plaintext. To create an encrypted password, you can use python:

I didn't do a PR as I'm using it with vSphere and not vagrant/virtualbox so couldn't test and confirm.

Build script or Ansible playbook to run through and update all base boxes

I would like to make it easier for me, every time there's a new VirtualBox release, to build and push updated Vagrant boxes from my local build environment.

Right now there are some manual steps for each box, which means it takes a minimum of a few hours with two or three parallel builds at a time. Not great.

Update to 16.04.5

It has been released... should be a simple matter of changing out URL and SHA.

Errors Running From Ubuntu

While attempting to run this using packer(v0.10.2) I ran into issues when that package attemtps to run
geerlingguy.nfs
I then tried to remove that package and just run with
geerlingguy.packer-debian
This resulted in new (but similar errors)

    virtualbox-iso:
    virtualbox-iso: PLAY ***************************************************************************
    virtualbox-iso:
    virtualbox-iso: TASK [setup] *******************************************************************
    virtualbox-iso: ok: [127.0.0.1]
    virtualbox-iso:
    virtualbox-iso: TASK [geerlingguy.packer-debian : Ensure apt cache is updated.] ****************
    virtualbox-iso: fatal: [127.0.0.1]: FAILED! => {"changed": false, "cmd": "apt-get update '&&' apt-get install python-apt -y -q --force-yes", "failed": true, "msg": "debconf: unable to initialize frontend: Dialog\ndebconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.)\ndebconf: falling back to frontend: Readline\ndebconf: unable to initialize frontend: Readline\ndebconf: (This frontend requires a controlling tty.)\ndebconf: falling back to frontend: Teletype\ndpkg-preconfigure: unable to re-open stdin: \nW: --force-yes is deprecated, use one of the options starting with --allow instead.\nE: Sub-process /usr/bin/dpkg returned an error code (1)", "rc": 100, "stderr": "debconf: unable to initialize frontend: Dialog\ndebconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.)\ndebconf: falling back to frontend: Readline\ndebconf: unable to initialize frontend: Readline\ndebconf: (This frontend requires a controlling tty.)\ndebconf: falling back to frontend: Teletype\ndpkg-preconfigure: unable to re-open stdin: \nW: --force-yes is deprecated, use one of the options starting with --allow instead.\nE: Sub-process /usr/bin/dpkg returned an error code (1)\n", "stdout": "Hit:1 http://us.archive.ubuntu.com/ubuntu xenial InRelease\nHit:2 http://us.archive.ubuntu.com/ubuntu xenial-updates InRelease\nHit:3 http://security.ubuntu.com/ubuntu xenial-security InRelease\nGet:4 http://ppa.launchpad.net/ansible/ansible/ubuntu xenial InRelease [18.1 kB]\nHit:5 http://us.archive.ubuntu.com/ubuntu xenial-backports InRelease\nGet:6 http://ppa.launchpad.net/ansible/ansible/ubuntu xenial/main amd64 Packages [552 B]\nGet:7 http://ppa.launchpad.net/ansible/ansible/ubuntu xenial/main i386 Packages [552 B]\nGet:8 http://ppa.launchpad.net/ansible/ansible/ubuntu xenial/main Translation-en [340 B]\nFetched 19.5 kB in 0s (20.2 kB/s)\nReading package lists...\nReading package lists...\nBuilding dependency tree...\nReading state information...\nSuggested packages:\n  python-apt-dbg python-apt-doc\nThe following NEW packages will be installed:\n  python-apt\n0 upgraded, 1 newly installed, 0 to remove and 4 not upgraded.\n1 not fully installed or removed.\nNeed to get 139 kB of archives.\nAfter this operation, 631 kB of additional disk space will be used.\nGet:1 http://us.archive.ubuntu.com/ubuntu xenial/main amd64 python-apt amd64 1.1.0~beta1build1 [139 kB]\nFetched 139 kB in 0s (162 kB/s)\nSelecting previously unselected package python-apt.\r\n(Reading database ... \r(Reading database ... 5%\r(Reading database ... 10%\r(Reading database ... 15%\r(Reading database ... 20%\r(Reading database ... 25%\r(Reading database ... 30%\r(Reading database ... 35%\r(Reading database ... 40%\r(Reading database ... 45%\r(Reading database ... 50%\r(Reading database ... 55%\r(Reading database ... 60%\r(Reading database ... 65%\r(Reading database ... 70%\r(Reading database ... 75%\r(Reading database ... 80%\r(Reading database ... 85%\r(Reading database ... 90%\r(Reading database ... 95%\r(Reading database ... 100%\r(Reading database ... 66690 files and directories currently installed.)\r\nPreparing to unpack .../python-apt_1.1.0~beta1build1_amd64.deb ...\r\nUnpacking python-apt (1.1.0~beta1build1) ...\r\nSetting up sudo (1.8.16-0ubuntu1.2) ...\r\n\r\nConfiguration file '/etc/sudoers'\r\n ==> Modified (by you or by a script) since installation.\r\n ==> Package distributor has shipped an updated version.\r\n   What would you like to do about it ?  Your options are:\r\n    Y or I  : install the package maintainer's version\r\n    N or O  : keep your currently-installed version\r\n      D     : show the differences between the versions\r\n      Z     : start a shell to examine the situation\r\n The default action is to keep your current version.\r\n*** sudoers (Y/I/N/O/D/Z) [default=N] ? dpkg: error processing package sudo (--configure):\r\n end of file on stdin at conffile prompt\r\nSetting up python-apt (1.1.0~beta1build1) ...\r\nErrors were encountered while processing:\r\n sudo\r\n", "stdout_lines": ["Hit:1 http://us.archive.ubuntu.com/ubuntu xenial InRelease", "Hit:2 http://us.archive.ubuntu.com/ubuntu xenial-updates InRelease", "Hit:3 http://security.ubuntu.com/ubuntu xenial-security InRelease", "Get:4 http://ppa.launchpad.net/ansible/ansible/ubuntu xenial InRelease [18.1 kB]", "Hit:5 http://us.archive.ubuntu.com/ubuntu xenial-backports InRelease", "Get:6 http://ppa.launchpad.net/ansible/ansible/ubuntu xenial/main amd64 Packages [552 B]", "Get:7 http://ppa.launchpad.net/ansible/ansible/ubuntu xenial/main i386 Packages [552 B]", "Get:8 http://ppa.launchpad.net/ansible/ansible/ubuntu xenial/main Translation-en [340 B]", "Fetched 19.5 kB in 0s (20.2 kB/s)", "Reading package lists...", "Reading package lists...", "Building dependency tree...", "Reading state information...", "Suggested packages:", "  python-apt-dbg python-apt-doc", "The following NEW packages will be installed:", "  python-apt", "0 upgraded, 1 newly installed, 0 to remove and 4 not upgraded.", "1 not fully installed or removed.", "Need to get 139 kB of archives.", "After this operation, 631 kB of additional disk space will be used.", "Get:1 http://us.archive.ubuntu.com/ubuntu xenial/main amd64 python-apt amd64 1.1.0~beta1build1 [139 kB]", "Fetched 139 kB in 0s (162 kB/s)", "Selecting previously unselected package python-apt.", "(Reading database ... ", "(Reading database ... 5%", "(Reading database ... 10%", "(Reading database ... 15%", "(Reading database ... 20%", "(Reading database ... 25%", "(Reading database ... 30%", "(Reading database ... 35%", "(Reading database ... 40%", "(Reading database ... 45%", "(Reading database ... 50%", "(Reading database ... 55%", "(Reading database ... 60%", "(Reading database ... 65%", "(Reading database ... 70%", "(Reading database ... 75%", "(Reading database ... 80%", "(Reading database ... 85%", "(Reading database ... 90%", "(Reading database ... 95%", "(Reading database ... 100%", "(Reading database ... 66690 files and directories currently installed.)", "Preparing to unpack .../python-apt_1.1.0~beta1build1_amd64.deb ...", "Unpacking python-apt (1.1.0~beta1build1) ...", "Setting up sudo (1.8.16-0ubuntu1.2) ...", "", "Configuration file '/etc/sudoers'", " ==> Modified (by you or by a script) since installation.", " ==> Package distributor has shipped an updated version.", "   What would you like to do about it ?  Your options are:", "    Y or I  : install the package maintainer's version", "    N or O  : keep your currently-installed version", "      D     : show the differences between the versions", "      Z     : start a shell to examine the situation", " The default action is to keep your current version.", "*** sudoers (Y/I/N/O/D/Z) [default=N] ? dpkg: error processing package sudo (--configure):", " end of file on stdin at conffile prompt", "Setting up python-apt (1.1.0~beta1build1) ...", "Errors were encountered while processing:", " sudo"]}

Before I try to continue debugging this, I wanted to check if there is something obvious I'm missing

Ansible provisioning failing

Awesome packer utility. Saved me lot of time and effort.

Getting following error while building packer box:

Build 'virtualbox-iso' errored: Error uploading main playbook: Error uploading ansible/main.yml: scp: /tmp/packer-provisioner-ansible-local/58dddd8a-18f2-0b20-6803-c516a46e93d9: No such file or directory

Do I need to install Ansible on host machine?

Cant install mysql

There seems to be a common problem installing mysql 5.5 on ubuntu, basically it ends with

The following packages have unmet dependencies:
 mysql-server : Depends: mysql-server-5.5 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

After a lot of searching I found the problem is the python libs:

$ dpkg -l | grep -i mysql  
ii  libmysqlclient18:amd64             5.5.50-0ubuntu0.12.04.1         amd64        MySQL database client library
ii  mysql-common                       5.5.50-0ubuntu0.12.04.1         all          MySQL database common files, e.g. /etc/mysql/my.cnf
ii  python-mysqldb                     1.2.3-1ubuntu0.1                amd64        Python interface to MySQL

This vagrant image is 16.04, and the packages above seem to be for 12.04. If I remove them manually then I can install mysql successfully, but when i install via ansible it first installs python-mysqldb, which puts them back!!
How do i fix or work around this?

Folder permission issues on Ubuntu 18.04 with PHP.

I have to following setup:

Host: Ubuntu 18.04, Virtualbox 5.2.16

My Vagrantfile:

Vagrant.configure("2") do |config|
#  config.vm.box = "ubuntu/bionic64"
  config.vm.box = "geerlingguy/ubuntu1804"
    config.vm.provider "virtualbox" do |vb|
  	vb.name = "ubuntu_php_permission"
  	vb.memory = 4096
  	vb.cpus = 2
    end
end

The test.php file:

<?php

$dir = $argv[1];

$defaultIterator = new \RecursiveDirectoryIterator($dir);
$defaultIterator->setFlags(\RecursiveDirectoryIterator::SKIP_DOTS);

foreach ($defaultIterator as $file){
    echo "file: " .$file->getFilename() . PHP_EOL;
}

Then i run the following commands

vagrant up
sudo apt update
sudo apt install php-cli

php /vagrant/test.php /vagrant

In my case i dont see any output. If i switch the vagrant box to "ubuntu/bionic64" i get the files in the folder listed.

Thats just a simple example.

I found this Problem in combination with Drupal 8 / Drush 9 which is mounted as a default virtualbox share in the vagrant box and Drush does not find any commands. I know nfs is the better solution for mounting drupal, but in this case nfs is not possible.

There are two interesting things:

  1. if i use php method scandir -> i can list the files.
  2. On Mac this problem does not occur.

Packer-1.6.0 throws error Deprecated configuration key: 'iso_checksum_type'

$ packer build -var 'version=1.2.0' box-config.json
Error: Failed to prepare build: "virtualbox-iso"

1 error occurred:
	* Deprecated configuration key: 'iso_checksum_type'. Please call `packer fix`
against your template to update your template to be compatible with the current
version of Packer. Visit https://www.packer.io/docs/commands/fix/ for more
detail.
$ packer --version
1.6.0
Ubuntu 20.04 LTS

Missing value for auto in boot_commands.

Replacing auto with auto=true in following places would allow for much shorter boot_command. Parameters related to locale, network and keyboard could be specified in preseed. Short boot_command is IMO desirable.

https://github.com/geerlingguy/packer-ubuntu-1604/blob/0685b365403ce9001855c3b962745aa0dae27b13/ubuntu1604.json#L33

https://github.com/geerlingguy/packer-ubuntu-1604/blob/0685b365403ce9001855c3b962745aa0dae27b13/ubuntu1604.json#L95

Furthermore mode in which boot_command is entered have kernel already specified, thus /install/vmlinuz typed is completely ignored. Prefixing arguments with kernel would be correct for boot:-style prompt (entered with <esc><esc><enter>), however this prompt doesn't seem to work on ubuntu installer iso.

The Ubuntu documentation in that matter is quite confusing (https://help.ubuntu.com/lts/installation-guide/armhf/apbs02.html):

B.2.3. Auto mode
This is enabled by using the Automated install boot choice, also called auto for some architectures or boot methods. In this section, auto is thus not a parameter, it means selecting that boot choice, and appending the following boot parameters on the boot prompt.

B.2.4. Aliases useful with preseeding
The following aliases can be useful when using (auto mode) preseeding. Note that these are simply short aliases for question names, and you always need to specify a value as well: for example, auto=true or interface=eth0.
...
auto auto-install/enable

Installing newer VirtualBox Guest Additions fails due to missing gcc

First off, thanks for providing this box to the community, it has helped me greatly.

The problem I have run into is that I have installed VB 5.0.22 on my host and the guest additions in this box is for 5.0.20. This by itself is not actually an issue, except I have a vagrant plugin (vagrant-vbguest) that tries to ensure that the guest's installed VB Guest Additions is the same version as the host VB install, for maximum compatibility. (I initially used this to upgrade boxes using VB 4.x additions to VB 5.x automagically.)

It tries to install the latest guest additions automatically using the ISO, but the installation fails because the kernel modules cannot compile and install themselves due to missing gcc and the build-essential package.

Would you consider adding build-essential to the box recipe, or do you believe that is out of scope of the box and I should handle it my side? I will roll with whatever you decide. :)

Packer-1.6.0 Deprecated configuration key: 'iso_checksum_type'. Please call `packer fix`

1 error occurred:
        * Deprecated configuration key: 'iso_checksum_type'. Please call `packer fix`
against your template to update your template to be compatible with the current
version of Packer. Visit https://www.packer.io/docs/commands/fix/ for more
detail.



Error: Failed to prepare build: "virtualbox-iso"

1 error occurred:
        * Deprecated configuration key: 'iso_checksum_type'. Please call `packer fix`
against your template to update your template to be compatible with the current
version of Packer. Visit https://www.packer.io/docs/commands/fix/ for more
detail.



Error: Failed to prepare build: "vmware-iso"

1 error occurred:
        * Deprecated configuration key: 'iso_checksum_type'. Please call `packer fix`
against your template to update your template to be compatible with the current
version of Packer. Visit https://www.packer.io/docs/commands/fix/ for more
detail.

Packer v1.6.0

VMware boxes built with Fusion 8.5 get stuck on 'Waiting for machine to boot' step

$ vagrant up ubuntu1604 --provider=vmware_fusion
Bringing machine 'ubuntu1604' up with 'vmware_fusion' provider...
==> ubuntu1604: Cloning VMware VM: 'file://~/Downloads/vmware-ubuntu1604.box'. This can take some time...
==> ubuntu1604: Verifying vmnet devices are healthy...
==> ubuntu1604: Preparing network adapters...
==> ubuntu1604: Starting the VMware VM...
==> ubuntu1604: Waiting for machine to boot. This may take a few minutes...

Tested with Vagrant 1.8.6 and packer 0.10.2. Going to update Packer and see if that helps...

Does not work on Windows

Thats what I get when running it on my Windows 10 machine:

PS C:\Users\jonas\Downloads\packer-ubuntu-1604> packer build .\ubuntu1604.json
virtualbox-iso output will be in this color.
vmware-iso output will be in this color.

2 error(s) occurred:

* role_paths: /etc/ansible/roles/geerlingguy.packer-debian is invalid: GetFileAttributesEx /etc/ansible/roles/geerlingguy.packer-debian: Das System kann den angegebenen Pfad nicht finden.
* role_paths: /etc/ansible/roles/geerlingguy.nfs is invalid: GetFileAttributesEx /etc/ansible/roles/geerlingguy.nfs: Das System kann den angegebenen Pfad nicht finden.

Seems like those paths are hardwired?

Apt lock file due to unattended-upgrades causes issues with initial provisioning

I could reproduce this issue one time last night, though I've seen a couple other reports of it happening. Basically, Ubuntu 16.04 defaults to running uattended-upgrades automatically (out of the box). What happens is that the first time a box is brought up, unattended-upgrades locks apt (see /var/lib/dpkg/lock), and then provisioning scripts error out if they install anything via apt.

The solution I think I'll go with (since I recommend people use the geerlingguy.security) to manage automatic upgrades themselves) is to disable the feature when building via kickstart (as suggested by @gretel):

d-i pkgsel/update-policy select unattended-upgradesd-i pkgsel/update-policy select unattended-upgrades

See related: hashicorp/vagrant#7155 (comment)

Packer VirtualBox builds failing under macOS High Sierra 10.13.2

So, super strange thing: I can't build this box—or any of my other Debian/Ubuntu boxes, for that matter—on my work laptop, running macOS 10.13.2. So far I've only debugged on that laptop, running both VirtualBox 5.2.4 and VirtualBox 5.1.30, along with both Packer 1.0.3, and 1.1.3.

For some reason, Packer itself is really slow no matter the version, so I'm wondering if there's something on the system hindering the build.

The boot_command was highly suspect (Ubuntu's always done weird things with it anyways...), because for some reason in one case the installer would drop to a blank screen (nothing on it), and then eventually it would drop back to language selection.

In other cases (playing with the <esc><wait><f6><wait> etc game in the beginning of the boot_command), I would get a popup for 'exit to the console installer' over and over again. Very odd behavior.

So using PACKER_LOG=1 packer build --only=virtualbox-iso ubuntu1604.json, I found that just using the following boot_command:

  "builders": [
    {
      "type": "virtualbox-iso",
      "boot_command": [
        "<enter>"
      ],
      ...

I would get the following output in the console on my host:

2017/12/24 22:59:49 ui: ==> virtualbox-iso: Typing the boot command...
==> virtualbox-iso: Typing the boot command...
2017/12/24 22:59:49 packer: 2017/12/24 22:59:49 Special code '<enter>' found, replacing with: [1c 9c]
2017/12/24 22:59:49 packer: 2017/12/24 22:59:49 Executing VBoxManage: []string{"controlvm", "packer-ubuntu-16.04-amd64", "keyboardputscancode", "1c"}
2017/12/24 22:59:52 packer: 2017/12/24 22:59:52 stdout:
2017/12/24 22:59:52 packer: 2017/12/24 22:59:52 stderr:
2017/12/24 22:59:52 packer: 2017/12/24 22:59:52 Executing VBoxManage: []string{"controlvm", "packer-ubuntu-16.04-amd64", "keyboardputscancode", "9c"}
2017/12/24 22:59:55 packer: 2017/12/24 22:59:55 stdout:
2017/12/24 22:59:55 packer: 2017/12/24 22:59:55 stderr:
2017/12/24 22:59:55 packer: 2017/12/24 22:59:55 [INFO] Waiting for SSH, up to timeout: 2h46m40s
2017/12/24 22:59:55 ui: ==> virtualbox-iso: Waiting for SSH to become available...
==> virtualbox-iso: Waiting for SSH to become available...

...but when switching off headless mode (so I could see the GUI), here's what I saw:

packer-ubuntu-weirdness

Hangs on "Waiting for SSH to become available"

Always hangs on:

==> virtualbox-iso: Waiting 10s for boot...
==> virtualbox-iso: Typing the boot command...
==> virtualbox-iso: Waiting for SSH to become available...

I don't think it is a issue related to this repo, but would be grateful if anyone knows a solution to it.

Startup - While mounting NFS it hangs

It might be the same of geerlingguy/drupal-vm#245

When I start the machine vagrant up, with NFS, it hangs while mounting NFS.

My host is MaxOS Sierra.

The settings in Vagrantfile are:

config.vm.network :private_network, ip: '192.168.50.50'
config.vm.synced_folder '.', '/vagrant', nfs: true, mount_options: ['vers=3'], nfs_udp: false, nfs_version: 3

If I run vagrant up --debug, I can see that it gets stuck on:

DEBUG ssh: Sending SSH keep-alive...

It tries again and again, but apparently SSH does not connect.

Without NFS everything works fine.

On my host, the output of lsof |egrep nfs is:

nfsd      33485           root    5u  IPv4 0x6d5874c158f8f163      0t0  UDP *:768
nfsd      33485           root    6u  IPv6 0x6d5874c158f919c3      0t0  UDP *:phonebook
nfsd      33485           root    7u  IPv4 0x6d5874c16b55c24b      0t0  TCP *:945 (LISTEN)
nfsd      33485           root    8u  IPv6 0x6d5874c1730df1e3      0t0  TCP *:944 (LISTEN)
nfsd      33485           root    9u  IPv4 0x6d5874c15af0905b      0t0  TCP *:nfsd (LISTEN)
nfsd      33485           root   10u  IPv6 0x6d5874c16cae81e3      0t0  TCP *:nfsd (LISTEN)

An error that it throws but not nfs related, is mesg: ttyname failed: Inappropriate ioctl for device. Could it be also that this error then causes the error while mounting NFS?

using boot.iso

Hi,
probably you have another github repo to build centos8 image using boot.iso but if you need: building packer image centos8 using boot.iso works. You need to change ks.cfg using url installation type instead of cdrom, eg:

url --url http://linuxsoft.cern.ch/centos/8/BaseOS/x86_64/kickstart
or
url --url http://linuxsoft.cern.ch/centos/8/BaseOS/x86_64/os

"os" version with continuous update applyed
"kickstart" version more "stable" following GA update strategy

as explained here: https://lists.centos.org/pipermail/centos-devel/2019-September/035984.html

Use Unicode locale?

Hello,

thanks for nice packer files, they saved some work for me! Is there any reason for not using an uncode locale (eg. en_US.UTF-8)?

Error on Boot - No valid rapl domain found in package

Hi,

i have an issue with the box loaded from vagrant cloud.

When the box is booting there is an error (see screenshot). The box is booting, but it takes much time.

Enviroment: Ubuntu with Virtualbox 5 (also tested on Mac)

flxpeterslemp-php7_default_1481487585770_71134 wird ausgefuhrt - oracle vm virtualbox_001

Error when upgrading packages at startup

During the apt -y update && apt-get -y update on scripts/ansible.sh looks like the package cloud-init requires interaction when upgrading:

openstack: Configuration file '/etc/cloud/cloud.cfg'
openstack: ==> Modified (by you or by a script) since installation.
openstack: ==> Package distributor has shipped an updated version.
openstack: What would you like to do about it ?  Your options are:
openstack: Y or I  : install the package maintainer's version
openstack: N or O  : keep your currently-installed version
openstack: D     : show the differences between the versions
openstack: Z     : start a shell to examine the situation
openstack: The default action is to keep your current version.
openstack: *** cloud.cfg (Y/I/N/O/D/Z) [default=N] ? dpkg: error processing package cloud-init (--configure):
openstack: end of file on stdin at conffile prompt
openstack: Errors were encountered while processing:
openstack: cloud-init
openstack: E: Sub-process /usr/bin/dpkg returned an error code (1)

Is there any way to provide the option that is expecting?

centos/7 with gui doesn't resize properly.

Thankyou for your work on this project!

I found that when I use the centos/7 box (updated to try try this today), that if I try and setup a gui the window wont resize much larger. If I resize the window to twice the size, the display becomes black.

The gui for Centos 7 can be configured with:

    config.vm.provision "shell", inline: "sudo yum groupinstall -y 'gnome desktop'"
    config.vm.provision "shell", inline: "sudo yum install -y 'xorg*'"
    config.vm.provision "shell", inline: "sudo yum remove -y initial-setup initial-setup-gui"
    config.vm.provision "shell", inline: "sudo systemctl isolate graphical.target"
    config.vm.provision "shell", inline: "sudo systemctl set-default graphical.target"
    config.vm.provision "shell", inline: "sudo yum install -y python3"

I am running this on a Centos 7 host with NVIDIA P5000 Graphics driver version v440.44

When I run this same set of commands with the box named "centos/7" instead (not "geerlingguy/centos7"), it works.

Include libvirt variants of the boxes.

Thanks for the boxes that you've provided, I've used them a lot.

Would you entertain the idea of including libvirt as an additional provider in addition to virtualbox? If so, I'd be happy to start on a PR to achieve this.

Add some automated tests

Ideally I'd like CI to run each build... but at least with Travis CI I can't run VirtualBox, so I can't build the VM using Packer and/or test with Vagrant.

Failing that, I'd like to test each build configuration (the Packer JSON), and run Ansible Lint on the Ansible playbook, maybe.

Will you consider have the same but using Hyper-V?

Hi Jeff,

I started recently following your work because of the Ansible 101 episodes and I wanted first of all to say great work! and a big Thank you!! When I can I will definitely sponsor you.

Meanwhile I was wondering if you have considered or have any plans to make the boxes available with config for Hyper-V?

Unfortunately on Windows if you have Hyper-V Virtual box can no longer use VT-X.

CentOS 6 box build now failing due to SSL handshake error with ansible-galaxy

    virtualbox-iso: Executing Ansible Galaxy: cd /tmp/packer-provisioner-ansible-local/5e40db00-ca8f-3118-2bfc-4704151348dc && ansible-galaxy --ignore-certs install -r /tmp/packer-provisioner-ansible-local/5e40db00-ca8f-3118-2bfc-4704151348dc/requirements.yml -p /tmp/packer-provisioner-ansible-local/5e40db00-ca8f-3118-2bfc-4704151348dc/roles
==> virtualbox-iso:  [WARNING]: - geerlingguy.packer_rhel was NOT installed successfully: Failed to
==> virtualbox-iso: get data from the API server (https://galaxy.ansible.com/api/): <urlopen error
==> virtualbox-iso: [Errno 1] _ssl.c:492: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3
==> virtualbox-iso: alert handshake failure>
==> virtualbox-iso: ERROR! - you can use --ignore-errors to skip failed roles and finish processing the list.
==> virtualbox-iso: Provisioning step had errors: Running the cleanup provisioner, if present...
==> virtualbox-iso: Deregistering and deleting VM...
==> virtualbox-iso: Deleting output directory...
Build 'virtualbox-iso' errored: Error executing Ansible: Error executing Ansible Galaxy: Non-zero exit status: 1

I think the easiest solution will be to run it using the ansible provisioner (instead of ansible-local), since SNI is not supported in CentOS 6 in any sane/logical/default manner.

Add Ubuntu 20.04 'Focal Fossa'

It's due out in April (fast approaching), and preview builds are already available.

Would be nice to have it ready so I can start testing with it, and migrating projects to it (some are still stuck way back on 16.04!).

Merge all packer boxes into this repository

This ticket is open as a consolidation; I actively maintain a number of Packer base boxes, and right now have them spread across a ton of repos. As this repos has the most forks / stars, and almost the most history, I've decided to consolidate all my packer boxes into it.

The rollout will be:

  • Move all packer projects into subdirs of this project (with one unified README listing/linking to each).
  • Clean up each packer project's README to focus on just that project's current status.
  • Deprecate each of the other projects via README and the description, close all issues and PRs (link to this issue), and archive those projects.
  • Look at ways to consolidate packer configurations / ansible playbooks (if possible)—this could be broken out into follow-up tickets.

Final checklist:

  • centos6
  • centos7
  • centos8
  • debian8
  • debian9
  • debian10
  • ubuntu1604
  • ubuntu1804
  • drupal-vm (or should I keep this one separate?)

Remove VMware Fusion support

Since I haven't updated that box, nor even have Fusion anymore... I am not willing to maintain support for it in this project.

VMWare provider performance issues

Hey Jeff. Over the past 6 months I've been trying to track down performance issues our team is facing during local development, using this box with VMware and DrupalVM. This week, I was finally able to isolate it to the VMWare provider. By switching our team to back to VirtualBox, we're seeing dramatic performance improvements (by orders of magnitude). Requests that frequently took 15 seconds or more to complete are now taking hundreds of milliseconds.

Is there a way that I could help you sort out the cause? I don't know if it's related to your box, vagrant, or the vmware vagrant plugin, and I'm not sure how to begin sorting it out. Using xhprof I was able to figure out that mysql queries were the major bottleneck, though even memcache appeared to have little to no impact on performance. Switching from NFS to Rsync also had no impact.

Thanks!

error

where is folder in ansible?

geerlingguy.nfs
geerlingguy.packer-debian

How and where are roles: geerlingguy.* obtained?

If you have the time can you explain to me how Ansible knows where to get your geerlingguy.* roles?

For example in shared/main.yml I see these roles

  roles:
    - role: geerlingguy.nfs

    - role: geerlingguy.packer_rhel
      when: ansible_os_family == 'RedHat'

    - role: geerlingguy.packer-debian
      when: ansible_os_family == 'Debian'

Looking in the shared/requirements.yml I do not see any hostname or url.

In ubuntu2004/box-config.json I see the ansible-local variables playbook_file and galaxy_file so it hints that the role is coming from Galaxy.

    {
      "type": "ansible-local",
      "playbook_file": "../shared/main.yml",
      "galaxy_file": "../shared/requirements.yml"
    }

Does the version of Ansible downloaded from the ppa (scripts/ansible.sh) have defaults on where to look for your roles?

I am trying to build on your work for VMware Fusion and installing the official Ansible release from Ubuntu 20.04 (https://packages.ubuntu.com/focal/ansible) with apt (not with pip or from ppa) and the official package does not know how to retrieve your roles.

==> vmware-iso: ERROR! the role 'geerlingguy.java' was not found in /tmp/packer-provisioner-ansible-local/5eb730dc-7a87-341c-c2c7-3ee2f6c3842e/roles:/home/vagrant/.ansible/roles:/usr/share/ansible/roles:/etc/ansible/roles:/tmp/packer-provisioner-ansible-local/5eb730dc-7a87-341c-c2c7-3ee2f6c3842e
==> vmware-iso: 
==> vmware-iso: The error appears to be in '/tmp/packer-provisioner-ansible-local/5eb730dc-7a87-341c-c2c7-3ee2f6c3842e/testing.yml': line 12, column 7, but may
==> vmware-iso: be elsewhere in the file depending on the exact syntax problem.
==> vmware-iso: 
==> vmware-iso: The offending line appears to be:
==> vmware-iso: 
==> vmware-iso:   roles:
==> vmware-iso:     - role: geerlingguy.java
==> vmware-iso:       ^ here

I am still a user of Ansible 2.9 and not familiar with Galaxy and Collections and example/ansible.cfg from the devel branch in GitHub does not have references to any of this information so I’m looking for assistance.

Thank you.

Update Guest Additions

Every time I spin up a new VM based on geerlingguy/ubuntu1604, I have to wait for VB guest additions to be updated to 5.2.10. This might only be a couple minutes per VM, but cumulatively it seems like quite a waste.

I'm not so familiar with the workflow for base VMs like this, but is there any way to get the guest additions updated "at the source" so individual users don't all have to wait for them to update?

Vagrant 1.9.7 displays warning about a box compatibility with VMware

After updating to Vagrant 1.9.7 following messages are displayed under booting machine based on a package created with packer-ubuntu-1604 project.

VMware-test git:(master) > vagrant up
Bringing machine 'vm1' up with 'vmware_workstation' provider...
==> vm1: Cloning VMware VM: 'ubuntu1604-my'. This can take some time...
==> vm1: Verifying vmnet devices are healthy...
==> vm1: Preparing network adapters...
WARNING: The VMX file for this box contains a setting that is automatically overwritten by Vagrant
WARNING: when started. Vagrant will stop overwriting this setting in an upcoming release which may
WARNING: prevent proper networking setup. Below is the detected VMX setting:
WARNING: 
WARNING:   ethernet0.pcislotnumber = "33"
WARNING: 
WARNING: If networking fails to properly configure, it may require this VMX setting. It can be manually
WARNING: applied via the Vagrantfile:
WARNING: 
WARNING:   Vagrant.configure(2) do |config|
WARNING:     config.vm.provider :vmare_workstation do |vmware|
WARNING:       vmware.vmx["ethernet0.pcislotnumber"] = "33"
WARNING:     end
WARNING:   end
WARNING: 
WARNING: For more information: https://www.vagrantup.com/docs/vmware/boxes.html#vmx-whitelisting
==> vm1: Starting the VMware VM...
==> vm1: Waiting for machine to boot. This may take a few minutes...
    vm1: SSH address: 192.168.86.130:22
    vm1: SSH username: vagrant
    vm1: SSH auth method: private key
==> vm1: Machine booted and ready!
==> vm1: Forwarding ports...
    vm1: -- 22 => 2222
    vm1: SSH address: 192.168.86.130:22
    vm1: SSH username: vagrant
    vm1: SSH auth method: private key
==> vm1: Setting hostname...
==> vm1: Configuring network adapters within the VM...
==> vm1: Waiting for HGFS to become available...
==> vm1: Enabling and configuring shared folders...
    vm1: -- /home/<username>Vagrant/Ansible-Random/VMware-test: /vagrant
VMware-test git:(master)  >

The Vagrantfile content

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  config.ssh.username = "vagrant"
  config.ssh.insert_key = false

  config.vm.box_check_update = false

  # create vm1 node
  config.vm.define :vm1 do |vm1_config|
    vm1_config.vm.box = "ubuntu1604-my"
    vm1_config.vm.hostname = "powershell"
    vm1_config.vm.network :private_network, ip: "192.168.86.129"
    #vm1_config.vm.synced_folder "./sources/", "/vagrant"#, disabled: true
    vm1_config.vm.provider "vmware_workstation" do |vb|
      vb.memory = "2048"
      vb.gui = true
    end
  end

end

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.