Skip to main content

Endymion

Endymion is a command-line tool that checks if the specified Vagrant boxes can be downloaded from Hashicorp’s Atlas. In the case of the official CentOS Linux images for Vagrant, it will also check if the images correspond to the version listed on Atlas.

Installation

Endymion doesn’t have any external dependencies outside of the Python standard library, so it shouldn’t pose any problems to install it directly. You can also install it in a virtualenv if you prefer.

If you only plan to use Endymion, the simplest way is to install it from PyPI:

$ pip install endymion

Developers can also run the development version:

$ git clone https://github.com/lpancescu/endymion.git
$ git checkout python3 # only if you use Python 3.x
$ pip install -e .

Usage

Exporting Atlas data as JSON

If you would like to export the existing metadata from Atlas, use the --export option. Endymion expects to find the SHA256 checksum files in the same directory, named after the corresponding image (e.g. centos_7.sha256sum.txt for centos/7); since Atlas typically has no checksum information in the metadata, the checksums will be read from these external files and inserted in the generated JSON metadata.

$ endymion –export centos/6 centos/7

Limitations

  • endymion uses the HEAD method of HTTP 1.1 to check the availability of the boxes without downloading them. This usually works with external boxes like the ones provided by CentOS or Fedora, but it will fail with 405 Method Not Allowed for boxes hosted by Hashicorp; using GET with a Content-range header produces the same response.

  • The CentOS project provides GnuPG-signed SHA256 checksums, but endymion doesn’t try to validate them (this would require downloading each variant of a box)

Supported Python versions

Both Python 2.7 and Python 3.x are supported, although they have different codebases:

  • The master branch contains the Python 2.7 source code

  • The python3 branch, unsurprisingly, only runs under Python 3.x (instead of unifying the two code bases, I decided to convert the Python 2.7 code to Python 3, to avoid needlessly complicating the code to support both versions in the long term; if CentOS Linux 8 will default to Python 3, I can just move the Python 3 code to master).

If you are a regular user, this doesn’t matter: pip install endymion will always install the right package for your Python version.

Metadata

Release files for endymion 1.4.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for endymion 1.4.1
File Size Uploaded Provenance Actions
endymion-1.4.1.tar.gz 7.4 kB Without provenance Details for endymion-1.4.1.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for endymion 1.4.1
File Interpreter ABI Platform Actions
endymion-1.4.1-py3-none-any.whl Python 3 none any Details for endymion-1.4.1-py3-none-any.whl
endymion-1.4.1-py2-none-any.whl Python 2 none any Details for endymion-1.4.1-py2-none-any.whl

Total release size: 27.4 kB

Release files / endymion-1.4.1.tar.gz

Download URL endymion-1.4.1.tar.gz
Size 7.4 kB
Tags Source
SHA-256 checksum
How to use checksums
061dd85338470f1e72d4f3ef916cca8364bd45f0ff5db2eba27c7b536e7d29d1
BLAKE2b-256 checksum
How to use checksums
113f9115e2f16e05d1b79d72ab4749e34efe12849cf0a287b3c9d77c34304906
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / endymion-1.4.1-py3-none-any.whl

Download URL endymion-1.4.1-py3-none-any.whl
Size 10.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d8bba53693e6aebc2824e7f24f6927f13c32af5bb2df1fb73c524376854622c8
BLAKE2b-256 checksum
How to use checksums
e4ba3475f4e717d308ecd1df9828b214d4d002d6c832ea6098aabdd7167f8c4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / endymion-1.4.1-py2-none-any.whl

Download URL endymion-1.4.1-py2-none-any.whl
Size 10.1 kB
Tags Python 2
SHA-256 checksum
How to use checksums
268222c4f9b140279ce40102cf044dd4aed7c37359b133af52b7bb4e6210c7c3
BLAKE2b-256 checksum
How to use checksums
56ebf1a702f05d0b06e78aadebc4d9ea3143293d22271f3adf9ae03b5b9bd60f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for endymion 1.4.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page