Skip to content
New issue

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

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

Already on GitHub? # to your account

[Demo with Importer] Update Argo CD from v2.1.0 to v2.1.2 with Importer #5

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

rytswd
Copy link
Owner

@rytswd rytswd commented Sep 7, 2021

Change Overview

This upgrades Argo CD from v2.1.0 to v2.1.2, using "Importer".

Details

🌄 What Is Importer?

Importer is a CLI tool to import any lines from any file.

It is designed to be "dumb", and simply imports lines without doing any validation. It is not specifically made for handling YAML and Kubernetes configuration files, and thus can be used in essentially any files, even along with Kustomize and Helm.

Benefits

🌟 Clear Diff

Although the change is about 3rd party tool upgrade, you can clearly track what the change is about.

📚 Clear Commit History

Because changes are always made in files, you can easily track the change history.
Also, if Importer is used to import data from URL, you will be able to see if the data from the target URL changes its content.

🔮 No Hidden Dependency

Because Importer only import data and saves it as a part of the file, the import target is clearly annotated, there is no hidden dependencies, and no magic happening.

Things to Consider

🚀 Tooling and Automation

Because Importer is yet another CLI tool, you need to have it installed on your machine to update the spec. This may be a drawback by itself, as GitOps solutions such as Argo CD and Flux provide native support for Helm and Kustomize. But Importer is more about the workflow - and it provides very clear, truly declarative files.

Importer installation is as simple as brew install upsidr/tap/importer, and can be used as a part of CI pipeline, including GitHub Action.
This repository has 2 Importer based automations set up.

With a setup like this, we get the benefit of Importer, while ensuring the code integrity with Importer.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant