I am new to devops and I am wondering, what's the best way to use GKE, Terraform and Gitlab repository for CI/CD. Right now, there are sets of commands used with flux, cert manager, but it's not automated. What are the best practice, tools and whole scheme be used like? Thanks for the answers.
Best way to use Gitlab, Terraform, Flux and GKE in gitops principle
354 Views Asked by Jozef Vrana At
1
There are 1 best solutions below
Related Questions in GOOGLE-CLOUD-PLATFORM
- php Variable name must change in for loop
- register_shutdown_function is not getting called
- Query returning zero rows despite entries existing
- Retrieving *number* pages by page id
- Automatically closing tags in form input?
- How to resize images with PHP PARSE SDK
- how to send email from localhost using codeigniter?
- Mariadb max Error while sending QUERY packet PID
- Multiusers login redirect different page in php
- Imaginary folder when I use "DirectoryIterator" in PHP?
Related Questions in GITLAB
- php Variable name must change in for loop
- register_shutdown_function is not getting called
- Query returning zero rows despite entries existing
- Retrieving *number* pages by page id
- Automatically closing tags in form input?
- How to resize images with PHP PARSE SDK
- how to send email from localhost using codeigniter?
- Mariadb max Error while sending QUERY packet PID
- Multiusers login redirect different page in php
- Imaginary folder when I use "DirectoryIterator" in PHP?
Related Questions in TERRAFORM
- php Variable name must change in for loop
- register_shutdown_function is not getting called
- Query returning zero rows despite entries existing
- Retrieving *number* pages by page id
- Automatically closing tags in form input?
- How to resize images with PHP PARSE SDK
- how to send email from localhost using codeigniter?
- Mariadb max Error while sending QUERY packet PID
- Multiusers login redirect different page in php
- Imaginary folder when I use "DirectoryIterator" in PHP?
Related Questions in GITOPS
- php Variable name must change in for loop
- register_shutdown_function is not getting called
- Query returning zero rows despite entries existing
- Retrieving *number* pages by page id
- Automatically closing tags in form input?
- How to resize images with PHP PARSE SDK
- how to send email from localhost using codeigniter?
- Mariadb max Error while sending QUERY packet PID
- Multiusers login redirect different page in php
- Imaginary folder when I use "DirectoryIterator" in PHP?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
In my previous project we've tried quite a few approaches and in the end realised that deployment with Octopus Deploy was the best fit, though partly cause it was used wider across the company, but for deployment with terraform it was also quite good. The main benefit was having the concept of tenants which correspond to each client (in particular Google Cloud project) and for a tenant you can set plenty of variables which mostly going to be used by terraform. Depending on the list of variables having configured each tenant can be a quite tedious task but I guess it's only at the first setup. Then it's much quicker to update it and run actual deployment.
We've also tried GitOps as in having repo per client (GCP project) with those variables and in our deployment scripts just pulling those repos and it's good as well cause it brings all benefits of having specification in source code as in logging and being single source of truth. The main disadvantage though was on any change there merge request should have been opened and it could take quite a while. If in your case it's not neccessary and the pipeline running on the changes to such specs repos is not so long then you can try it, why not.
Another thing you can try is to put variables into Gitlab variables, but it also depends on number of environments you've got, if it's going to keep growing (assuming it is) it probably not a good idea as there's no much visibility over changes and it can be hard to keep track of all those variables.