Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix Github CI builds and modulesync #104

Merged
merged 9 commits into from
Jul 16, 2021
Merged

Fix Github CI builds and modulesync #104

merged 9 commits into from
Jul 16, 2021

Conversation

alexjfisher
Copy link
Member

@alexjfisher alexjfisher commented Jul 15, 2021

This PR is a continuation of #93 (which I accidentally got into a closed state I couldn't reopen).

@alexjfisher
Copy link
Member Author

alexjfisher commented Jul 15, 2021

@trevor-vaughan Hi! Any chance you could spare some beaker docker expertise?

Our github workflow has a 'gitlab' service started, but the beaker container doesn't seen to have any network connectivity with it.
(Also see this thread)

Feel free to push any commits BTW ;)

@baurmatt
Copy link
Contributor

I tried to debug this a little bit further. Some things I've learned:

  • Github Actions creates a dedicated bridge network in which it runs services
  • Beaker containers are started in another bridge network, making it impossible to reach the Gitlab service running in the dedicated bridge network
  • Github Actions seems to have no way to change the dedicated network
  • We might be able to switch the Beaker container to the Github Actions network by leveraging the dockeropts config option. But I don't understand the syntax.
  • Using the "voxpupuli/puppet-vault_lookup" solution (creating a dedicated beaker nodeset) seems to be not an option because we would need to do it for each supported OS.

Copy link
Member

@ekohl ekohl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for looking into this! I guess I was trying to be too ambitious by using native GHA.

.msync.yml Outdated
@@ -1 +1,2 @@
modulesync_config_version: '3.0.0'
---
modulesync_config_version: '4.0.0'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we update to 4.1.0? :)

spec/spec_helper_acceptance.rb Show resolved Hide resolved
@ekohl
Copy link
Member

ekohl commented Jul 16, 2021

Let's see if I broke it again with my latest change. Feel free to drop that commit if it doesn't.

@@ -1,66 +1,7 @@
require 'voxpupuli/acceptance/spec_helper_acceptance'

ENV['BEAKER_FACTER_GITLAB_IP'] = File.read(File.expand_path('~/GITLAB_IP')).chomp
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://github.com/voxpupuli/voxpupuli-acceptance/#environment-variables-to-facts

I also thought about doing it in the workflow file but I think this is better for users who want to run it outside of GHA.

@@ -0,0 +1,48 @@
# The omnibus installer use the following algorithm to know what to do.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bastelfreak and others added 3 commits July 16, 2021 14:41
The docker module fails on EL7 so the tests started to fail on this.
The latest docker module hard fails on this since it's detected as Red
Hat < 7.
Copy link
Member

@ekohl ekohl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I rebased it to modulesync 4.1.0 and also squashed some commits. I think this is now ready to merge if it's green.

ekohl and others added 5 commits July 16, 2021 14:44
This uses features from voxpupuli-acceptance to reduce
spec_helper_acceptance's size. Another benefit is that editors recognize
the .pp extension and you get syntax highlighting.
This module still has support for Puppet 5 which ships Ruby 2.4. This
allows it to install there.
@alexjfisher alexjfisher changed the title Modulesync Fix Github CI and modulesync Jul 16, 2021
@alexjfisher alexjfisher changed the title Fix Github CI and modulesync Fix Github CI builds and modulesync Jul 16, 2021
@alexjfisher alexjfisher merged commit c89e098 into master Jul 16, 2021
@alexjfisher alexjfisher deleted the modulesync branch July 16, 2021 13:15
@ekohl
Copy link
Member

ekohl commented Jul 16, 2021

We shouldn't forget to create issues that we've dropped Amazon Linux and EL6 for the changelog.

@alexjfisher
Copy link
Member Author

I think the next release will have a substantial release summary. I'm hoping to get PR together based on https://github.com/syseleven/puppet-gitlab_ci_runner/tree/clean-move-to-concat-deferred At the moment, the config file is only written when registering a runner, and any subsequent config changes you make have no effect. There are also plenty of more exotic configurations you can't make whilst registering.

@alexjfisher
Copy link
Member Author

For completeness (and mainly because I pinged Trevor and don't want to waste his time!), in #105 I managed to get the docker networking working in the way we originally wanted. Might revisit this at a later date.

@alexjfisher
Copy link
Member Author

We shouldn't forget to create issues that we've dropped Amazon Linux and EL6 for the changelog.

Done via #118

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants