All Projects → SoftwareAG → sagdevops-ci-assets

SoftwareAG / sagdevops-ci-assets

Licence: Apache-2.0 license
Software AG DevOps library to support assets CI (continuous integration) with webMethods 9.x and 10.0. Work together with https://github.com/SoftwareAG/webmethods-sample-project-layout

Programming Languages

XSLT
1337 projects

Projects that are alternatives of or similar to sagdevops-ci-assets

webmethods-integrationserver-skyprofiler
SKYProfiler is a performance monitoring tool for Integration Server. SKYProfiler tracks the service invocations and the monitored data can be seen in real time. This helps users track the time each service invocation takes and further drills down to the child service to identify which service contributes to time.
Stars: ✭ 26 (+13.04%)
Mutual labels:  webmethods, integration-server
phpstan
PHP Static Analysis in Github Actions.
Stars: ✭ 41 (+78.26%)
Mutual labels:  continuous-integration
ebook-continuous-delivery-with-kubernetes-and-jenkins
Continuous Delivery for Java Apps: Build a CD Pipeline Step by Step Using Kubernetes, Docker, Vagrant, Jenkins, Spring, Maven and Artifactory
Stars: ✭ 39 (+69.57%)
Mutual labels:  continuous-integration
plugin.video.sendtokodi
📺 plays various stream sites on kodi using youtube-dl
Stars: ✭ 86 (+273.91%)
Mutual labels:  continuous-integration
verchew
System dependency version checker.
Stars: ✭ 24 (+4.35%)
Mutual labels:  continuous-integration
concourse-ci-formula
All-in-one Concourse VM with S3-compatible storage and Vault secret manager
Stars: ✭ 26 (+13.04%)
Mutual labels:  continuous-integration
docker-terraform-docs
Alpine-based multistage-build version of terraform-docs and terraform-docs-replace in multiple versions to be used for CI and other reproducible automations
Stars: ✭ 59 (+156.52%)
Mutual labels:  continuous-integration
kahoy
Simple Kubernetes raw manifests deployment tool
Stars: ✭ 33 (+43.48%)
Mutual labels:  continuous-integration
iconsole-android
OpeniConsole connects to an iConsole+ fitness bike head unit over bluetooth.
Stars: ✭ 27 (+17.39%)
Mutual labels:  ant
great expectations action
A GitHub Action that makes it easy to use Great Expectations to validate your data pipelines in your CI workflows.
Stars: ✭ 66 (+186.96%)
Mutual labels:  continuous-integration
boots
boots is a .NET global tool for "bootstrapping" vsix & pkg files. Just "boots https://url/to/your/package"!
Stars: ✭ 78 (+239.13%)
Mutual labels:  continuous-integration
actions
Set of actions for implementing CI/CD with werf and GitHub Actions
Stars: ✭ 67 (+191.3%)
Mutual labels:  continuous-integration
notebooks-ci-showcase
Fully Configured Example of CI/CD For Notebooks On Top Of GCP
Stars: ✭ 22 (-4.35%)
Mutual labels:  continuous-integration
rpgmpacker
Simple CLI program for packaging RPG Maker games to use in an automated build/deploy pipeline.
Stars: ✭ 19 (-17.39%)
Mutual labels:  continuous-integration
terraform-aws-concourse
Terraform Module for a distributed concourse cluster on AWS
Stars: ✭ 12 (-47.83%)
Mutual labels:  continuous-integration
Assistive-Webdriver
Assistive-Webdriver is a tool to automate end-to-end web application tests with a screen reader.
Stars: ✭ 19 (-17.39%)
Mutual labels:  automated-tests
continuous-integration-with-python
How to test your python code. How to automatically run your tests for your Python code. How to get reports of the tests coverage
Stars: ✭ 25 (+8.7%)
Mutual labels:  continuous-integration
changed-files
Github action to retrieve all (added, copied, modified, deleted, renamed, type changed, unmerged, unknown) files and directories.
Stars: ✭ 733 (+3086.96%)
Mutual labels:  continuous-integration
fitparse-rs
Rust library to parse FIT formatted files
Stars: ✭ 20 (-13.04%)
Mutual labels:  ant
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 (+182.61%)
Mutual labels:  continuous-integration

sagdevops-ci-assets

Software AG DevOps library to support assets CI (continuous integration) with webMethods 9.x and 10.0. Works together with webMethods sample project layout

Description

sagdevops-ci-assets is a library that easily enables CI for your webMethods projects. You can setup your infrastructure in minutes and then deploy flowlessly on your test service while also checking the quality by running all tests uploaded your version control.

Set-up

webMethods Installation

Prepare your webMethods installation - your build server can contain only a plain IntegrationServer with Deployer. Keep the server plain - there is no need for designer or database connection. Your test server can be more complex as CI will execute unit and integration tests against it. The build and the test server must reach each other over http so that the deployment and the testing can be performed.

CI Library

Download the library on your build server by

git clone https://github.com/SoftwareAG/sagdevops-ci-assets.git

Edit the System.properties to correspond to your inftrastucture - deployerHost is the machine where your Deployer is running(normally the build server) where targetHost is your test server - where the packages will be deployed and tested.

Notice change the path the Deployer if you're not using the default Integration Server instance.

Build/CI Environment

  • On your build server set-up the default java on PATH to be the JDK that comes with your webMethods installation ${SAG_HOME}/jvm/jvm/bin/java

  • On your build server install Jenkins CI Server and run it with the same user that run your webMethods processes. The CI can work also with other CI server, but for the reference implementation we've chosen Jenkins.

  • In Jenkins->Manage Jenkins->Configure System->EnvironmentVariables define the following environment variables:

  1. SAG_CI_HOME = path_to_th_sagdevops-ci-assets on the local file system.
  2. SAG_HOME = path_to_your_local_webmethods_installation

Use slash "/" as path separator. Example: "C:/SoftwareAG", instead of "C:\SoftwareAG".

Jenkins Pipeline Job

In Jenkins, create a new item from type pipeline. Give it a unique name as we use the job name as identifier further down the process. Scroll down the page to the pipeline definition and choose Pipeline definition from SCM. Choose git as system and give the url of the webmethods-sample-project-layout - https://github.com/SoftwareAG/webmethods-sample-project-layout.git

This sample project contains two pre-created pipeline definitions - Jenkinsfile.win and Jenkinsfile.unix that run on the respective operating systems. Type in the correct file in respect of you build server OS.

Those pipeline definition are orchestrating all steps around the build, deploy and the test on your server. If the all environment variables are set correctly you should not change anything here.

How it works

After your pipeline job is set-up, trigger it. It will download the pipeline description automatically, then checkout the sources, build the core, deploy the code and run tests. Whenever a developer checks in new IS packages and Tests those will be automatically deployed and all new tests will be executed. For this to work, the structure defined here https://github.com/SoftwareAG/webmethods-sample-project-layout.git has followed.

Notice

The wM Test Suite tests will have to be places in a directory a setup directory inside the test project, so that it can be picked up by the test executor.

Authors

Henning Waack
Angel Tcholtchev


These tools are provided as-is and without warranty or support. They do not constitute part of the Software AG product suite. Users are free to use, fork and modify them, subject to the license agreement. While Software AG welcomes contributions, we cannot guarantee to include every contribution in the master project.


For more information you can Ask a Question in the TECHcommunity Forums.

You can find additional information in the Software AG TECHcommunity.


Contact us at TECHcommunity if you have any questions.

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