bitovi / bitovi/bitops

Set the plugin version on custom image build

Open
#315 0 comments 0 reactions 0 assignees View on GitHub
feature plugins
Dominant language
Python
Stars
37
Forks
9
PR merge metrics
No merged PRs in 30d

Description

Per https://github.com/bitovi/bitops/issues/307 the official BitOps images are now packaging and providing the latest tools by default.

However, user should be able to pin the tool version (ansible==1.2.3, terraform=3.4.5). This might be achievable when building their custom BitOps Docker image https://bitovi.github.io/bitops/plugins/#creating-your-own-bitops-image

The version parameter could be provided via config like:
```yaml
bitops:
plugins:
terraform:
source: https://github.com/bitops-plugins/terraform
version: 1.2.3 # <-- new setting
```
and so `1.2.3` will be passed to the plugin `install.sh` to install the needed tool version:
https://github.com/bitops-plugins/terraform/blob/b189c2dd7cb38e7e883837f0f3204e5b7e8a6e6b/install.sh#L13-L14

Here tool version = plugin version, where version is just a parameter and not a repo git tag.
That would fit customized use cases and environments which is the main purpose of building the custom bitops image with the chosen plugins.

Started with the #307, it's just a matter of time when this will pop-up more.

### Previous Discussions
- #307
- https://github.com/bitovi/bitops/discussions/206

Contributor guide

Open the contributing guide

Research direction

Start with the custom BitOps image instructions at bitovi.github.io/bitops/plugins/#creating-your-own-bitops-image and the plugin configuration under bitops.plugins. Then inspect the referenced terraform plugin install.sh, especially lines 13–14, to trace how a version could be passed through. Done means a configured version reaches install.sh when building a custom image and pins the selected tool version.

Written by the indexing model from the issue text.

Assessment

Tech stack
ansible, docker, terraform
Domain
build-system, devops
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.