All Projects → jelastic-jps → Git Push Deploy

jelastic-jps / Git Push Deploy

Licence: apache-2.0
Simple Automated CI/CD Pipeline for GitHub and GitLab Projects

Projects that are alternatives of or similar to Git Push Deploy

Rocket
Automated software delivery as fast and easy as possible 🚀
Stars: ✭ 217 (+933.33%)
Mutual labels:  automation, continuous-integration, continuous-delivery, continuous-deployment
swarmci
Swarm CI - Docker Swarm-based CI system or enhancement to existing systems.
Stars: ✭ 48 (+128.57%)
Mutual labels:  pipeline, continuous-integration, continuous-delivery, continuous-deployment
cloud-s4-sdk-pipeline
The Cloud SDK pipeline uses the Cloud SDK continuous delivery server for building, checking, and deploying extension applications. Projects based on the SAP Cloud SDK archetype will automatically use this pipeline.
Stars: ✭ 65 (+209.52%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment, ci-cd
Argo Cd
Declarative continuous deployment for Kubernetes.
Stars: ✭ 7,887 (+37457.14%)
Mutual labels:  pipeline, continuous-delivery, continuous-deployment, ci-cd
Agola
Agola: CI/CD Redefined
Stars: ✭ 783 (+3628.57%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment, ci-cd
Terrahub
Terraform Automation and Orchestration Tool (Open Source)
Stars: ✭ 148 (+604.76%)
Mutual labels:  automation, continuous-integration, continuous-delivery, continuous-deployment
bump-everywhere
🚀 Automate versioning, changelog creation, README updates and GitHub releases using GitHub Actions,npm, docker or bash.
Stars: ✭ 24 (+14.29%)
Mutual labels:  pipeline, continuous-integration, continuous-delivery, continuous-deployment
Cml
♾️ CML - Continuous Machine Learning | CI/CD for ML
Stars: ✭ 2,843 (+13438.1%)
Mutual labels:  ci-cd, gitlab-ci, continuous-integration, continuous-delivery
Gocd
Main repository for GoCD - Continuous Delivery server
Stars: ✭ 6,314 (+29966.67%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment, ci-cd
Android-CICD
This repo demonstrates how to work on CI/CD for Mobile Apps 📱 using Github Actions 💊 + Firebase Distribution 🎉
Stars: ✭ 37 (+76.19%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment, ci-cd
Pipelines
Build pipelines for automation, deployment, testing...
Stars: ✭ 105 (+400%)
Mutual labels:  automation, continuous-integration, continuous-delivery, continuous-deployment
Cds
Enterprise-Grade Continuous Delivery & DevOps Automation Open Source Platform
Stars: ✭ 3,677 (+17409.52%)
Mutual labels:  automation, continuous-integration, continuous-delivery, continuous-deployment
Nevergreen
🐤 A build monitor with attitude
Stars: ✭ 170 (+709.52%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment, ci-cd
Syncd
syncd是一款开源的代码部署工具,它具有简单、高效、易用等特点,可以提高团队的工作效率.
Stars: ✭ 2,065 (+9733.33%)
Mutual labels:  automation, continuous-integration, continuous-delivery, continuous-deployment
Origin
Conformance test suite for OpenShift
Stars: ✭ 8,046 (+38214.29%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment, ci-cd
www.go.cd
Github pages repo
Stars: ✭ 39 (+85.71%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment, ci-cd
cloud-s4-sdk-pipeline-docker
The Cloud SDK continuous delivery infrastructure makes heavy use of docker images. This are the docker sources of these images.
Stars: ✭ 13 (-38.1%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment, ci-cd
Serverless Plugin Canary Deployments
Canary deployments for your Serverless application
Stars: ✭ 283 (+1247.62%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment, ci-cd
Gaia
Build powerful pipelines in any programming language.
Stars: ✭ 4,534 (+21490.48%)
Mutual labels:  automation, pipeline, continuous-integration, continuous-delivery
Agent
The Buildkite Agent is an open-source toolkit written in Golang for securely running build jobs on any device or network
Stars: ✭ 534 (+2442.86%)
Mutual labels:  continuous-integration, continuous-delivery, continuous-deployment

Simple Automated CI/CD Pipeline for Git Projects

This Git-Push-Deploy solution enables automatic delivery of updates within your Git application sources directly to the cloud. The package can be applied as an add-on to Java, PHP, Ruby, Node.js, Python and Go projects, run on top of the certified stack templates.

git-push-deploy-pipeline

The workflow depends on the programming language used in your project:

  • for Java-based projects, the package initiates creation of separate environment with a Maven build node, which will be responsible for interaction with remote Git repository, triggering your application builds and their deployment to application server

  • for PHP/Ruby/Node.js/Python/Go apps, the package sets up a pipeline for project deployment directly to the ROOT context on a web server (consider that Ruby app servers are displayed with a deployment mode instead of a context within dashboard, though the actual project location is the same)

All related deployment operations are performed via Jelastic API. Herewith, if a server runs multiple containers, all of them will be restarted sequentially (with a 30-second delay by default) during the update to eliminate possible application downtime. Beside that, a special ZDT Deployment option is used for PHP applications, ensuring their constant availability even with a single application server node.

Requirements

Before applying the package, please consider the following points:

  • The solution is proven for use with GitHub and GitLab repositories
  • For a proper package installation, some preliminary Git repository configurations are required:
    • generated and remembered Personal Access Token that corresponds to your GitHub or GitLab account
    • for integration with Java-powered app, the appropriate repository root should contain a pom.xml file with the following content as an obligatory basis (where groupId, artifactId and version values are optional):
<project>
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.mycompany.app</groupId>
    <artifactId>my-app</artifactId>
    <version>1.0</version>
    <packaging>war</packaging>
    <build>
        <finalName>${project.artifactId}</finalName>
    </build>
</project>

Deploy

How to Integrate Git-Push-Deploy Pipeline to Jelastic Environment

To install the Git-Push-Deploy package, copy link to the manifest.jps file above and import it to your Jelastic dashboard.

git-push-deploy-installation

Within the opened installation window, specify the following data:

  • Git Repo Url - HTTPS link to your application repo
  • Branch - a project branch to be used
  • User - your Git account login
  • Token - personal Git access token for webhook generation (can be created within GitHub/GitLab account settings)
  • Environment name - target environment your application should be deployed to
  • Nodes - application server name (is fetched automatically upon selecting the environment)

Click Install and wait for Jelastic to configure CI/CD pipeline for your project. Once your application is deployed, all the further changes, committed to a source repository, will be automatically delivered to your environment inside Jelastic Cloud.

For more information on the package please refer to the article Git Push Deploy to Containers.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].