Execution Environments Getting started guide & Community EE images availability

,

Execution environments documentation update

Try Ansible Execution Environments to solve software dependencies, portability, and content separation issues and gain from other benefits of containerization!

The Getting started with Execution Environments guide is now available for you! Many thanks to everyone involved!

The guide shows the power of Ansible control nodes built and run using container technology.

It concisely covers the following topics:

  • Introduction to execution environments (technology overview, values it brings)
  • Setting up your environment
  • Building a simple execution environment
  • Running your execution environment
  • Running community execution environments

Please try it out and help improve community experience by sharing your feedback on the Forum, on Matrix in the Ansible Community Working Group room and/or open an issue/pull request in the ansible-documentation repository!

The community Execution Environment images availability

The community execution environment container images are now available!

They are based on a latest Fedora image and get updated regularly.
There are two editions available at the moment:

  • community-ee-minimal: includes only ansible-core
  • community-ee-base: contains ansible-core and the following collections:
    • ansible.posix
    • ansible.utils
    • ansible.windows

If you want to include other collections or collections of different versions, just build you own custom execution environment.

Unfamiliar with the technology?

Take a look at the Getting started with Execution Environments guide!

How to use the images

The images are available as:

  • ghcr.io/ansible-community/community-ee-minimal:<TAG>
  • ghcr.io/ansible-community/community-ee-base:<TAG>

Try them out in a few easy steps using the new Running Ansible with the community EE image guide.

Feedback

Your feedback is invaluable! Share your ideas or ask for help on the Forum!

14 Likes

thanks @Andersson007 for sharing this.
I have created my custom EE which includes Ontap Netapp, Windows, VMware, Cisco UCS, Infoblox, Powershell for Linux and AWX.
Will check if there is any change required in my EE.

4 Likes

Like the new guide! It is easy to follow along and seems to cover all of the basics.

One thing that I believe would be helpful to add would be to have a brief overview of the execution-environment.yml file keys that are listed in the example with a link to the Ansible Builder documentation for more details and information on other keys that can used for execution environment creation.

4 Likes

I’m wondering what everyone thinks about switching the default image for navigator to the new community-ee-minimal image? It would make getting started easier b/c the EE would not need to be specified…

4 Likes

Thanks for sharing this, I wasn’t aware that community-ee-minimal existed. I had an alternative personal repo which is made defunct by that GitHub - AlanCoding/zen-ee: Ansible execution environment with only the basics and I would like to link the official one, but I can’t find the github repository that contains the EE definition. Can you point me to the source containing the execution-environment.yml for that?

Why community-ee-minimal instead of community-ee-base?

Was just thinking some content/collections might make it easier out of the box…

The current EE for navigator has these: https://github.com/ansible/creator-ee/blob/f88071df1271f4f6c7b031bc4f78c0ccb5ae7f78/_build/requirements.yml#L4

1 Like

I wondered about documenting my findings on creating an Execution Environment manually (i.e. not use ansible-builder at all, just go back to the Dockerfile)

I only really did it as I got frustrated with installing a collection using git as it hadn’t installed git (although I’d specified it) before installing the collection, and also wanted more flexibility in choice of base container to use something other than yum/dnf - but the end result is, in my opinion, at least as maintainable as an execution-environment.yml

One of the other problems I solved was installing ansible-cached-lookup using pip --no-deps as otherwise I got the massive legacy ansible module rather than the preferred ansible-core (I should probably raise that as a bug there but it was easily worked around - and I know that ansible-inventory-grapher that I wrote has the same dependency bug, because it hasn’t been updated in years, so no judgment from me!)

Anyway, not sure if other people would find it interesting, I might just put it on a blog post somewhere but if it was interesting as core docs I could write it up and create a PR.

2 Likes

@cidrblock yep, it’s in my list;)
UPDATE: i mean to raise that question. Yep, the simpler the better + the default image size can matter for users…

2 Likes

GitHub - ansible-community/images is the repo.

1 Like

IMPORTANT UPDATE

The community-ee-minimal version 2.15.4-2 and community-ee-base version 2.15.4-3 execution environment images have been published. They contain some necessary system packages missed in the original releases.

Please update your ansible-navigator or AWX/Controller configuration if it uses the images.
We are sorry if it caused any inconveniences and we are working on better testing and publishing processes :wink:

3 Likes