terraform-aws-github-runner | Terraform module for scalable GitHub action runners on AWS | Continous Integration library

 by   philips-labs TypeScript Version: npalm_test_0 License: MIT

kandi X-RAY | terraform-aws-github-runner Summary

kandi X-RAY | terraform-aws-github-runner Summary

terraform-aws-github-runner is a TypeScript library typically used in Devops, Continous Integration applications. terraform-aws-github-runner has no bugs, it has no vulnerabilities, it has a Permissive License and it has medium support. You can download it from GitHub.

The moment a GitHub action workflow requiring a self-hosted runner is triggered, GitHub will try to find a runner which can execute the workload. This module reacts to GitHub's check_run event or workflow_job event for the triggered workflow and creates a new runner if necessary.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              terraform-aws-github-runner has a medium active ecosystem.
              It has 1247 star(s) with 363 fork(s). There are 22 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 25 open issues and 291 have been closed. On average issues are closed in 64 days. There are 14 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of terraform-aws-github-runner is npalm_test_0

            kandi-Quality Quality

              terraform-aws-github-runner has 0 bugs and 0 code smells.

            kandi-Security Security

              terraform-aws-github-runner has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              terraform-aws-github-runner code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              terraform-aws-github-runner is licensed under the MIT License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              terraform-aws-github-runner releases are available to install and integrate.
              Installation instructions, examples and code snippets are available.
              It has 3397 lines of code, 0 functions and 133 files.
              It has low code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of terraform-aws-github-runner
            Get all kandi verified functions for this library.

            terraform-aws-github-runner Key Features

            No Key Features are available at this moment for terraform-aws-github-runner.

            terraform-aws-github-runner Examples and Code Snippets

            No Code Snippets are available at this moment for terraform-aws-github-runner.

            Community Discussions

            QUESTION

            GitHub Actions stuck on yarn build step for React app continous integration
            Asked 2020-Dec-23 at 04:53

            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:53

            The 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.

            Source https://stackoverflow.com/questions/65412663

            QUESTION

            Can I use my sonarqube server for any git repository?
            Asked 2020-Aug-04 at 08:21

            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:21

            I 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.

            Source https://stackoverflow.com/questions/63037563

            QUESTION

            How merge tag into branch?
            Asked 2020-Apr-10 at 10:50

            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:

            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:50

            you can try to reset the branch and after push it

            Source https://stackoverflow.com/questions/61136561

            QUESTION

            Sonarqube API Call wrong Response
            Asked 2020-Feb-05 at 13:49

            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:49

            After 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?

            Source https://stackoverflow.com/questions/60057351

            QUESTION

            Azure Function App Deploy from Azure Build Pipeline: 'credentials' cannot be null
            Asked 2020-Jan-09 at 16:24

            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:22

            This 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.

            Source https://stackoverflow.com/questions/59580256

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install terraform-aws-github-runner

            Go to GitHub and create a new app. Beware you can create apps your organization or for a user. For now we support only organization level apps.
            Create app in Github
            Choose a name
            Choose a website (mandatory, not required for the module).
            Disable the webhook for now (we will configure this later or create an alternative webhook).
            Permissions for all runners: Repository: Actions: Read-only (check for queued jobs) Checks: Read-only (receive events for new builds) Metadata: Read-only (default/required)
            Permissions for repo level runners only: Repository: Administration: Read & write (to register runner)
            Permissions for organization level runners only: Organization Self-hosted runners: Read & write (to register runner)
            Save the new app.
            On the General page, make a note of the "App ID" and "Client ID" parameters.
            Generate a new private key and save the app.private-key.pem file.
            To apply the terraform module, the compiled lambdas (.zip files) need to be available either locally or in an S3 bucket. They can be either downloaded from the GitHub release page or build locally. To read the files from S3, set the lambda_s3_bucket variable and the specific object key for each lambda. The lambdas can be downloaded manually from the release page or using the download-lambda terraform module (requires curl to be installed on your machine). In the download-lambda directory, run terraform init && terraform apply. The lambdas will be saved to the same directory. For local development you can build all the lambdas at once using .ci/build.sh or individually using yarn dist. To create spot instances the AWSServiceRoleForEC2Spot role needs to be added to your account. You can do that manually by following the AWS docs. To use terraform for creating the role, either add the following resource or let the module manage the the service linked role by setting create_service_linked_role_spot to true. Be aware this is an account global role, so maybe you don't want to manage it via a specific deployment. Next create a second terraform workspace and initiate the module, or adapt one of the examples. Note that github_app.key_base64 needs to be a base64-encoded string of the .pem file i.e. the output of base64 app.private-key.pem. The decoded string can either be a multiline value or a single line value with new lines represented with literal \n characters. Run terraform by using the following commands. The terraform output displays the API gateway url (endpoint) and secret, which you need in the next step. The lambda for syncing the GitHub distribution to S3 is triggered via CloudWatch (by default once per hour). After deployment the function is triggered via S3 to ensure the distribution is cached.
            At this point you have 2 options. Either create a separate webhook (enterprise, org, or repo), or create webhook in the App. Go back to the GitHub App and update the following settings. Finally you need to ensure the app is installed to all or selected repositories. Go back to the GitHub App and update the following settings.
            Create a new webhook on repo level for repo level for repo level runner, or org (or enterprise level) for an org level runner.
            Provide the webhook url, should be part of the output of terraform.
            Provide the webhook secret (terraform output -raw <NAME_OUTPUT_VAR>).
            In the "Permissions & Events" section and then "Subscribe to Events" subsection, check either "Workflow Job" or "Check Run" (choose only 1 option!!!).
            In the "Install App" section, install the App in your organization, either in all or in selected repositories.
            Enable the webhook.
            Provide the webhook url, should be part of the output of terraform.
            Provide the webhook secret (terraform output -raw <NAME_OUTPUT_VAR>).
            In the "Permissions & Events" section and then "Subscribe to Events" subsection, check either "Workflow Job" or "Check Run" (choose only 1 option!!!).
            In the "Install App" section, install the App in your organization, either in all or in selected repositories.

            Support

            We welcome contribution, please checkout the contribution guide. Be-aware we use pre commit hooks to update the docs.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/philips-labs/terraform-aws-github-runner.git

          • CLI

            gh repo clone philips-labs/terraform-aws-github-runner

          • sshUrl

            git@github.com:philips-labs/terraform-aws-github-runner.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Explore Related Topics

            Consider Popular Continous Integration Libraries

            chinese-poetry

            by chinese-poetry

            act

            by nektos

            volkswagen

            by auchenberg

            phpdotenv

            by vlucas

            watchman

            by facebook

            Try Top Libraries by philips-labs

            spiffe-vault

            by philips-labsGo

            terraform-registry

            by philips-labsGo

            slsa-provenance-action

            by philips-labsGo

            dct-notary-admin

            by philips-labsGo

            aws-ecr-scanning-slack-notifications

            by philips-labsJavaScript