serverless-nextjs-github-ci-cd | use Github actions to manage the CI/CD flow | Continous Integration library
kandi X-RAY | serverless-nextjs-github-ci-cd Summary
kandi X-RAY | serverless-nextjs-github-ci-cd Summary
This is an example of how to setup ci/cd for a project using the awesome serverless nextjs component. GitHub Actions are used to create a basic ci/cd workflow where commits to main branch deploy a staging environment while creating a release by tagging a commit deploy the production environment. The implementation is not for the faint of heart. Bootstrapping your project's resources requires manual steps and "priming the pump". The setup is not ideal for sure. However, once you get past the initial deployment, you will find the ci/cd to just work. The steps below take you through the exact steps to deploy this repo to Lambda@Edge. Hopefully you can follow along. To cut to the chase simply clone this repo for as a starter and filling in evn variables as needed. It is presumed that you know how to use git, GitHub, GitHub Actions, aws, the aws cli and understand what the Serverless Nextjs Component is and how it works. This process also requires that you have a domain managed by aws (Route 53) that is the targeted deployment domain. If you're not scared away yet, please follow along as you are guided through setting up your serverless-nextjs project for automated ci/cd with Github Actions. Note: this is likely a temporary solution until serverless-nextjs supports serverless framework component v2.
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 serverless-nextjs-github-ci-cd
serverless-nextjs-github-ci-cd Key Features
serverless-nextjs-github-ci-cd 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 serverless-nextjs-github-ci-cd
Installing the serverless framework as a development dependency results in advantages later on with the ci process.
GitHub actions requires your AWS key and secret. These need to be added to your GitHub account as environment variables. Log in to your GitHub account and navigate to Settings. Select Secrets in the left sidebar. Click New Secret to add AWS_ACCESS_KEY_ID. Click New Secret to add AWS_SECRET_ACCESS_KEY.
Once the site is available at the endpoint, remove comments in .github/workflows/staging.yml to enable downloading the .serverless directory from the S3 bucket during next the ci/cd process. Commit the changes and push to Github. Congratulations! You now have a ci/cd process for staging when commits are made to the main branch. Going forward the .serverless directory is downloaded as a step in your ci/cd process.
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