terraform-multienv | multiple environments infrastructure | Continous Integration library
kandi X-RAY | terraform-multienv Summary
kandi X-RAY | terraform-multienv Summary
A template for maintaining a multiple environments infrastructure with Terraform. This template includes a CI/CD process, that applies the infrastructure in an AWS account.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of terraform-multienv
terraform-multienv Key Features
terraform-multienv Examples and Code Snippets
Community Discussions
Trending Discussions on Continous Integration
QUESTION
I am trying to create a simple continous integration workflow for my React app in which for every new pull request to master branch I run the unit tests and create build. I have deployed the yaml configuration file for GitHub Actions to my repository. When I create a pull request, it starts the checks for the pull request, but it gets stuck on the build step. I am using webpack to build my React app.
integrate.yml
...ANSWER
Answered 2020-Dec-23 at 04:53The issue here was when building project using the webpack
command, after the build is complete, it does not returns the control and keeps on running. Therefore it gets stuck on the Build Project
step in the yaml
file and does not go the next step in Github Actions. The solution is to add a compiler hook
in the webpack config to exit after the build is complete. This is how I added it in my config and it is working fine now.
QUESTION
I am working on a online-school where student projects are decentralized on git repositories. When a student wishes to correct a project:
- The student must specify his git-repo-url + private key in order to pull it on the correction-server
- Then several tasks are applied on the project (compilation check, output checks).
I'd like to check the code quality and return a feedback for each user. I guess sonarqube would be a good choice since it supports 28+ languages.
I am familiar with sonarqube used with a continous integration, but I can't find in their documentation how to call sonarqube for my use case. I'd need something like a rest api for requesting a code analysis by giving the git url & its key and get a response with the code quality output.
Would it be possible?
...ANSWER
Answered 2020-Aug-04 at 08:21I think there is a misunderstanding, between SonarQube Server and SonarQube Scanner, this is already well explained in https://stackoverflow.com/a/49588950/3708208
So to do an analysis, you actually need to run a SonarQube scanner with some specificaitons, which is pretty well documented. When you have successfully set up the scanner, you can easily retrieve reports, status, quality gate via REST API.
QUESTION
I'm building a continous integration pipeline based on a git repository.
I have 3 branch:
- master branch for the dev environment
- test branch for the test environment
- prod branch for the prod environment
Any time a branch is updated, a pipeline update my website, eg:
- when a push on master branch is made, a pipeline update https://dev.website.com
- when a push on test branch is made, a pipeline update https://test.website.com
- when a push on prod branch is made, a pipeline update https://prod.website.com
Everytime I release a new version, I update the master branch and tag the commit whit the version number:
...ANSWER
Answered 2020-Apr-10 at 10:50you can try to reset the branch and after push it
QUESTION
when closing a branch in a continous integration environment my scripts are also supposed to delete associated sonarqube projects.
To achieve this I am using the sonarqube API as described in the WebAPI documentation. I am adressing the endpoint api/projects/delete
with corresponding project-key. If the deletion is successful the http request is answered with 204 - No content
if the project was not created in sonarqube or was deleted already I get 404 - Not found
which makes sense and can be handled programmatically.
Since a few weeks the responses are inconsistent and it can happen that I get the response 200 - Ok
for a ressource that is not in Sonarqube. The results are different per day, time or project I try to delete.
Does anyone has an idea where this could come from? The Sonarqube API documentation lacks some detail regarding to the expected status codes.
It is obvious that I could handle this in my code as well. But since the solution worked like this for ages I am wondering where this did come from.
I am running Sonarqube 6.7.5.38563.
Thanks in advance.
Max
...ANSWER
Answered 2020-Feb-05 at 13:49After alot of manual API calls with Postman I found the problem.
Deletion is taking to long so that SonarQube is displaying the "Loading..." pages which give back a response code 200.
Strange behaviour because this can't be fixed by increasing the timeouts on the calling side. Is there any chance to adjust the value in Sonarqube when a Loading Page should be displayed?
QUESTION
I am trying to create a build pipeline in Azure DevOps to deploy an Azure Function Application automatically as part of a continous integration pipeline. When the Function App Deploy step is run, the step fails with 'credentials' cannot be null.
Does anyone know why this happens?
My Build Pipeline:
The Log output when the step runs:
The only thing that I think that it can be is the Azure Resource Manager subscription which I am using Publish Profile Based Authentication however I have managed to create a similar pipeline for a web application with a deploy option using this authentication and it worked successfully. I just cannot deploy the function application.
...ANSWER
Answered 2020-Jan-09 at 16:22This same problem also ocurrs with publishing web apps I found. There are two different tasks that can be used for web apps to publish and you have to use the right one.
There is a task called Azure Web App Deploy that works.
Also a task called Azure App Service Deploy that doesn't.
This is with Publish Profile Based Authentication.
I found that to deploy the Function Application you can also use the Azure Web App Deploy task and it seems to work.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install terraform-multienv
We're going to create the following resources per environment AWS VPC, Subnets, Routes and Routing Tables, Internet Gateway S3 bucket (website) and an S3 object (index.html) Terraform remote backend - S3 bucket and DynamoDB table
Create a new GitHub repository by clicking - Use this template and don't tick Include all branches
AWS Console > Create IAM Users for the CI/CD service per environment Name: ${app_name}-${environment}-cicd Permissions: Allow Programmatic Access and attach the IAM policy AdministratorAccess (See Recommendations) Create AWS Access Keys and save them in a safe place, we'll use them in the next step
GitHub > Create the following repository secrets for basic application details APP_NAME - Application name, such as tfmultienv AWS_REGION - Region to deploy the application, such as eu-west-1 (Ireland)
GitHub > Create the following repository secrets for authenticating with AWS, according to the access keys that were created in previous steps AWS_ACCESS_KEY_ID_DEV AWS_SECRET_ACCESS_KEY_DEV IMPORTANT: The names of the secrets are not arbitrary, make sure you set them as shown in the example below
Deploying the infrastructure - Commit and push changes to your repository git checkout dev git add . git commit -m "deploy dev" git push --set-upstream origin dev
Results Newly created resources in AWS Console - VPC, S3 and DynamoDB Table CI/CD logs in the Actions tab (this repo's logs) The URL of the deployed static S3 website is available in the terraform-apply logs, for example: s3_bucket_url = terraform-20200912173059419600000001.s3-website-***.amazonaws.com Replace *** with the AWS_REGION, for example eu-west-1 terraform-20200912175003424600000001.s3-website-eu-west-1.amazonaws.com
Create stg branch git checkout dev git checkout -b stg git push --set-upstream origin stg
GitHub > Promote dev environment to stg Create a PR from dev to stg The plan to stg is added as a comment by the terraform-plan pipeline Merge the changes to stg, and check the terraform-apply pipeline in the Actions tab
That's it, you've just deployed two identical environments! Go ahead and do the same with prd
How to proceed from here Make changes in dev - commit and push Promote dev to stg - create a PR Promote stg to prd - create a PR Revert changes in dev - reverting a commit Revert changes in stg and prd - reverting a PR
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page