#Continuous Integration

4 Followers · 72 Posts

In software engineering, continuous integration (CI) is the practice of merging all developer working copies to a shared mainline several times a day.

InterSystems Official Steven LeBlanc · Aug 21, 2020

I am pleased to announce the availability of InterSystems Container Registry. This provides a new distribution channel for customers to access container-based releases and previews. All Community Edition images are available in a public repository with no login required. All full released images (IRIS, IRIS for Health, Health Connect, System Alerting and Monitoring, InterSystems Cloud Manager) and utility images (such as arbiter, Web Gateway, and PasswordHash) require a login token, generated from your WRC account credentials.

14
7 2358
Job Utsavi Gajjar · Jan 5, 2021

We are looking to hire a DevOps engineer with expertise in Intersystems Technologies like Ensemble and/or IRIS as essential.


Main responsibility of the Role will be to implement Version Control and automated CI/CD pipeline for code build and deployment via tools and automation scripts for the current Intersystems platforms within the organisation.

If interested please email your resume to utsavi.gajjar@mater.org.au

0
0 470
Question Rajasekar Balasubramaniyan · Oct 6, 2020

Hi, I am new to IRIS and We are planning to setup a CI pipeline on AWS VM deploying the iris data platform container. I am trying to find out which folders needs to be inside the source control and where (exact folder) the updated code needs to be pulled in the container. I would be much obliged if anyone cant point the CI CD related documentation.

Thanks,
Raj

1
0 703
Article Zhong Li · Sep 6, 2020 18m read

Keywords:  IRIS, IntegratedML, Flask, FastAPI, Tensorflow Serving, HAProxy, Docker, Covid-19

Purpose:

We touched on some quick demos of  deep learning and machine learning over the past few months, including a simple Covid-19 X-Ray image classifier and a Covid-19  lab result classifier for possible ICU admissions.  We also touched on an IntegratedML demo implementation of the ICU classifier.

0
1 2561
Article Timothy Leavitt · Aug 27, 2020 7m read

Introduction

In a previous article, I discussed patterns for running unit tests via the  InterSystems Package Manager. This article goes a step further, using GitHub actions to drive test execution and reporting. The motivating use case is running CI for one of my Open Exchange projects, AppS.REST (see the introductory article for it here). You can see the full implementation from which the snippets in this article were taken on GitHub; it could easily serve as a template for running CI for other projects using the ObjectScript package manager.

0
2 995
Article Janne Korhonen · Jun 4, 2020 5m read

A lot of developers like to work with Studio and have been looking into source code version control such as GIT or into enabling modern development workflows like CICD or DevOps processes.

This article describe an elementary solution to get you started in CICD and DevOps, even if you are not yet ready to move to Atelier or forth coming VS Code approach which enable client side source code version control.

0
0 1096
Announcement Rubens Silva · Mar 16, 2020

Hello all!

As we ObjectScript developers have been experiencing, preparing an environment to run CI related tasks can be quite the chore. This is why I have been thinking about how we could improve this workflow and the result of that effort is IRIS-CI.

See how it works here.

Quickstart

1.Download the image from the Docker Hub registry:

docker pull rfns/iris-ci:0.5.3
  1. Run the container (with the default settings):
docker run --rm --name ci -t -v /path/to/your/app:/opt/ci/app rfns/iris-ci:0.5.3

Notice that volume mounting to /path/to/your/app? This is where the app should be.

0
1 467
Question Javier Sanchis · Feb 13, 2020

Hi, everybody, 

I've been reading some posts in the community but I haven't been able to come to a conclusion. Here's my point.

I have a cache code, and following this guide https://cedocs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?… but I can't understand how to run this from jenkins for example, without using the console, and thus automate the process. That is to say, if it were possible to do it, what steps should I follow.

Thank you very much

2
0 1240
Question Ankita JAin · May 31, 2017

Hi ,

I am stuck with unit  test failure with intersystem . In case of unit test failure, the build in jenkins is succeding while the build in jenkins should fail in case unit test failure .

In cache programming i am using %UnitTest.Manager class and DebugRunTestCase method within it. I'm able to link studio with jenkins. I wanna fail my build in jenkins, if any of the test cases fails. Could anyone help?

14
0 1879
InterSystems Official Thomas Carroll · Apr 5, 2019

Hi Community!

We're pleased to announce that that InterSystems IRIS Community Edition is available on the Docker Store! InterSystems IRIS Community Edition is the no-cost developer edition designed to lower the barriers to entry to get started with IRIS. Now that it is listed on the Docker Store, running an IRIS Community instance is as easy as -

docker run -d -p 52773:52773 store/intersystems/iris:2019.1.0.511.0-community

For more on running IRIS in containers check out our Documentation or one of the many Community posts on the topic!

14
2 3925
Article Dmitry Maslennikov · Mar 20, 2019 3m read

This is a continuation of my story about the development of my project isc-tar started in the first part.

Just having tests is not enough, it does not mean that you will run tests after all changes. Running tests should be automated, and when you cover all your functionality with tests, everything should work well after any change in any place.  And Continuous Integration (CI) helps to keep the code and deployment procedure with as fewer bugs as possible and automates the routine procedures, like publishing releases.

I use GitHub to store the source code. And some time ago GitHub started to work on its own CI/CD platform and named it GitHub Actions. It is not widely available, yet. You have to be signed as a beta tester for this feature, as I did. GitHub Actions uses quite a different way how to deal with a build workflow. What is important that Github Actions allows to use Docker, and it’s quite easy to customize available actions. And interesting that GitHub Actions is really much bigger than any classic CI like we have in Travis, Circle or Gitlab CI and so on. You can find more in the official documentation.

0
1 818
Article Eduard Lebedyuk · Mar 7, 2018 7m read

In this series of articles, I'd like to present and discuss several possible approaches toward software development with InterSystems technologies and GitLab. I will cover such topics as:

  • Git 101
  • Git flow (development process)
  • GitLab installation
  • GitLab Workflow
  • Continuous Delivery
  • GitLab installation and configuration
  • GitLab CI/CD

In the previous article, we covered Git basics, why a high-level understanding of Git concepts is important for modern software development, and how Git can be used to develop software. Still, our focus was on the implementation part of software development, but this part presents:

  • GitLab Workflow - a complete software life cycle process - from idea to user feedback
  • Continuous Delivery - software engineering approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any time. It aims at building, testing, and releasing software faster and more frequently.
1
4 3513
Question Thiago Zenaro · Oct 30, 2018

Hi community.

I'm trying to create a "setup" method to be called on a batch script but i'm getting the error <INVALID ARGUMENT> when I pass a string as an argument to this method.

The idea is to call the method with a folder as the parameter, for example:

##class(test.MyClass).MyMethod("D:\path\to\my\file.json")
 

My class (just for example)

Class test.MyClass

{
ClassMethod MyMethod(pFilePath)
{
Write pFilePath ,!
}
}

I'm using cmd as follows:

D:\>csession CACHE20172 -U %SYS ##class(test.MyClass).

7
0 1224
Question Brian Chen · Jan 27, 2019

Hello,

I am trying to copy an xml file generated on an Apache server into the Jenkins workspace post-build. I was thinking to use a 'send files over ssh' post-build script, but have not done this before and do not know how to refer to the file location on Apache server vs on Jenkins.

For example, if I want to copy from Apache's location of: "classes/UnitTest/Results.xml" into Jenkin's workspace: "/ReportFiles/Results.xml",

How does the script differentiate between whether the location address refers to the Apache server or Jenkins workspace?

Or is there a better alternative way to do this?
 

2
0 21803
Article Eduard Lebedyuk · Mar 1, 2018 6m read

Everybody has a testing environment.

Some people are lucky enough to have a totally separate environment to run production in.

-- Unknown

.

In this series of articles, I'd like to present and discuss several possible approaches toward software development with InterSystems technologies and GitLab. I will cover such topics as:

  • Git 101
  • Git flow (development process)
  • GitLab installation
  • GitLab WorkFlow
  • GitLab CI/CD
  • CI/CD with containers

This first part deals with the cornerstone of modern software development - Git version control system and various Git flows.

1
5 5035
Announcement Luca Ravazzolo · Aug 21, 2018

Hi All,

Who, in the age of digital transformation, doesn't want to reap more benefits out of any process, procedure, and resource we have? At InterSystems Solution Developers Conference (part of InterSystems Global Summit 2018) we will have sessions on how to improve the way applications are built with modern tools like Docker containers, Gitlab, Circle CI, Travis, etc., how continuous integration and continuous delivery (CI/CD) processes can help us deliver more value quickly to the end-user, and how we can start thinking about modernizing traditional applications.

0
1 485
Announcement Evgeny Shvarov · Apr 11, 2018

Hi, Community!

Continuous Delivery is a software engineering approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any time. It aims at building, testing, and releasing software faster and more frequently. The approach helps reduce the cost, time, and risk of delivering changes by allowing for more incremental updates to applications in production.

Join us at 07:00 UTC, April 24th for a webinar with a live demo "Git flows and Continuous Delivery" by @Eduard Lebedyuk 

The language of the webinar is Russian.

Also, see the related articles on DC.

1
0 574
Article Eduard Lebedyuk · Jul 6, 2018 9m read

In this series of articles, I'd like to present and discuss several possible approaches toward software development with InterSystems technologies and GitLab. I will cover such topics as:

  • Git 101
  • Git flow (development process)
  • GitLab installation
  • GitLab Workflow
  • Continuous Delivery
  • GitLab installation and configuration
  • GitLab CI/CD
  • Why containers?
  • Containers infrastructure
  • CD using containers
  • CD using ICM

In this article, we'll build Continuous Delivery with InterSystems Cloud Manager. ICM is a cloud provisioning and deployment solution for applications based on InterSystems IRIS. It allows you to define the desired deployment configuration and ICM would provision it automatically. For more information take a look at First Look: ICM.

0
2 1485
Question Thiago Zenaro · May 25, 2018

Hi everyone

I'm coding a script in order to validade an installation package following the steps:

- Create environment { }
Try{
    - Import classes
    // Do some stuffs
    - Compile Classes
}Catch (ex){
    // oops ...
}
- Destroy environment { }

In some specific cases I will need to terminate the current process and start a new one with some new parameters.
With any code inside my try catch block, whenever I terminate the process I receive a RESJOB and it works perfectly.
When my job is running a compilation ($SYSTEM.OBJ.Compile(.

7
0 718
Article Eduard Lebedyuk · Apr 6, 2018 5m read

In this series of articles, I'd like to present and discuss several possible approaches toward software development with InterSystems technologies and GitLab. I will cover such topics as:

  • Git 101
  • Git flow (development process)
  • GitLab installation
  • GitLab Workflow
  • Continuous Delivery
  • GitLab installation and configuration
  • GitLab CI/CD
  • Why containers?
  • Containers infrastructure
  • GitLab CI/CD using containers

In the first article, we covered Git basics, why a high-level understanding of Git concepts is important for modern software development, and how Git can be used to develop software.

In the second article, we covered GitLab Workflow - a complete software life cycle process and Continuous Delivery.

In the third article, we covered GitLab installation and configuration and connecting your environments to GitLab

In the fourth article, we wrote a CD configuration.

In the fifth article, we talked about containers and how (and why) they can be used.

In this article let's discuss main components you'll need to run a continuous delivery pipeline with containers and how they all work together.

0
2 4042
Article Eduard Lebedyuk · Mar 26, 2018 5m read

In this series of articles, I'd like to present and discuss several possible approaches toward software development with InterSystems technologies and GitLab. I will cover such topics as:

  • Git 101
  • Git flow (development process)
  • GitLab installation
  • GitLab Workflow
  • Continuous Delivery
  • GitLab installation and configuration
  • GitLab CI/CD
  • Why containers?
  • GitLab CI/CD using containers

In the first article, we covered Git basics, why a high-level understanding of Git concepts is important for modern software development, and how Git can be used to develop software.

In the second article, we covered GitLab Workflow - a complete software life cycle process and Continuous Delivery.

In the third article,  we covered GitLab installation and configuration and connecting your environments to GitLab

In the fourth article, we wrote a CD configuration.

In this article, let's talk about containers and how (and why) they can be used.

0
2 1587