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

[CLOUD] - Identify the best workflow to deploy this project and make it available for CICD deployments within a day #55

Open
julianxhokaxhiu opened this issue Feb 6, 2023 · 0 comments
Labels
documentation Improvements or additions to documentation enhancement New feature or request

Comments

@julianxhokaxhiu
Copy link
Member

Issue Type

Enhancement

Description

The Context:
At the current state, it is not easy at all to deploy this project on a remote cluster. We claim it is as easy as deploying Argo and applying our manifest but in fact, there are a series of challenges to overcome while doing that in order to achieve a perfectly working cluster, as we intended:

  • ArgoCD is required to be deployed on the argocd namespace, otherwise, our apps will fail to be deployed, as our manifests seem to have this value hardcoded
  • ArgoCD requires a special configuration to ensure our app-of-apps is deployed correctly, in the right order. Without this configuration, all our add-ons would not respect the order as well miss some configurations being made down the road.
  • In order to access the Kubernetes master API to provide a deployment context to the Github Action it is required to set up an OIDC connection, for example for AWS, it's not that easy to figure out which is the role to use, as well as which IAM permissions are required to make it work in the first place.

These are at the current state the challenges I faced with @LucaLanziani while we were trying to deploy this solution on an AWS EKS cluster and probably we missed some others that might happen down the road, but at the current state those are already some huge roadblocks we noticed that require immediate attention if we want to deliver an easy to use experience for DevOps onboarding this project, no matter their background.

The Solution:
First of all, it would be nice to identify if there is a way to abstract the OIDC connection layer to ensure it works cross-cloud and ideally even on bare metal. Once that has been figured out, an ideal solution would be to provide an easy-to-use script and/or a make command that would abstract this complexity and allow everyone to deploy this project on their target cloud environment ( AWS, Google, Azure, Alibaba, etc. ) with ease.

The Alternatives:
An alternative that could be considered but IMHO should be done meanwhile the full scripted solution is provided, is to create a series of documentation that would cover this aspect and help the DevOps operator to successfully deploy this solution on their intended cloud platform.

Detailed steps

N/A

Screenshots

N/A

Logs

No response

@julianxhokaxhiu julianxhokaxhiu added documentation Improvements or additions to documentation enhancement New feature or request labels Feb 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant