Skip to content
This repository has been archived by the owner on Apr 13, 2019. It is now read-only.

Sorry ruby, but chef has got to go. #17

Merged
merged 1 commit into from
Oct 24, 2016
Merged

Sorry ruby, but chef has got to go. #17

merged 1 commit into from
Oct 24, 2016

Conversation

phs
Copy link
Contributor

@phs phs commented Sep 13, 2016

Sorry ruby, but chef has got to go.

Apparently chef can't sit on its hands for a few months without breaking itself. Out you go! Once removed, there isn't much argument for ruby either: the next best provisioning tool for this use case is probably shell scripts.

This prompts a number of not-so-small changes:

  • make is now the build tool.
  • Rspec and serverspec is likewise abandoned for bats, a bash testing tool.
  • Version commit/tag management has been extracted to bump-version.
  • Ditch Ubuntu 14 for 16.
  • Ditch VMware, which has problems in the fuse-based shared FS, for virtualbox

The move to ubuntu 16 was prompted by wanting a newer GPG toolchain (2.1). However GPG is no longer interesting, as cleanly exposing signing abilities to git within the guest is just too clumsy. We keep ubuntu 16 since it's the future anyhow.

My previous adherence to ubuntu 14 was driven by a problem between vagrant-cachier and permissions/ownership problems appearing in 16. These have been resolved.

@phs
Copy link
Contributor Author

phs commented Sep 13, 2016

Hm. To keep its dependencies minimal, install hijacks the ruby embedded in vagrant and uses it to render the Vagrantfile and one or two other things. This suggests that those files wish to remain ERB, and re-rendering inside either gets to re-use ERB or have a second template.

So we may keep ruby after all.

@phs
Copy link
Contributor Author

phs commented Sep 13, 2016

There's no real reason it must be ERB though; we only use it to interpolate a small number of strings. The older sed @VARIABLE@ pattern will suffice, and the embedded ruby will certainly be able to do it.

@phs phs force-pushed the phs/ditch-chef branch 3 times, most recently from 21668a5 to 96f1998 Compare September 22, 2016 06:39
@phs phs force-pushed the phs/ditch-chef branch 13 times, most recently from ae30f03 to 8d058db Compare October 2, 2016 04:31
@phs phs force-pushed the phs/ditch-chef branch 11 times, most recently from 31eb536 to b3a5db0 Compare October 19, 2016 21:11
@phs phs force-pushed the phs/ditch-chef branch 8 times, most recently from f125ba4 to b634e43 Compare October 24, 2016 04:46
Apparently chef can't sit on its hands for a few months without breaking itself.  Out you go!  Once removed, there isn't much argument for ruby either: the next best provisioning tool for this use case is probably shell scripts.

This prompts a number of not-so-small changes:
* `make` is now the build tool.
* Rspec and serverspec is likewise abandoned for [`bats`][1], a bash testing tool.
* Version commit/tag management has been extracted to `bump-version`.
* Ditch Ubuntu 14 for 16.
* Ditch VMware, which has [problems][2] in the fuse-based shared FS, for virtualbox
* `install` grows a `LOCAL` mode, intended to update an existing repo.

The move to ubuntu 16 was prompted by wanting a newer GPG toolchain (2.1).  However GPG is no longer interesting, as cleanly exposing signing abilities to git within the guest is just too clumsy.  We keep ubuntu 16 since it's the future anyhow.

My previous adherence to ubuntu 14 was driven by a problem between `vagrant-cachier` and permissions/ownership problems appearing in 16.  These have been [resolved][3].

[1]: https://github.com/sstephenson/bats
[2]: vmware/open-vm-tools#90
[3]: fgrehm/vagrant-cachier#175
@phs phs merged commit bdcf042 into master Oct 24, 2016
@phs phs removed the in progress label Oct 24, 2016
@phs phs deleted the phs/ditch-chef branch October 24, 2016 05:48
phs added a commit that referenced this pull request Apr 16, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant