Change management

Syndicate content 9 

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

Last comment 4 days ago
+ 2   1 6
685

views

+ 2

rating

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.

Last comment 1 March 2019
+ 5   0 4
1068

views

+ 5

rating

One of the many benefits of using Atelier for your ObjectScript development is its integration with a wide range of source control systems. This integration enables you to use modern development workflows which increase collaboration while minimizing the risk inherent to volatile code bases. 

Veteran ObjectScript developers can tell you about the workarounds that were needed before they could use source control systems with products like Caché and Ensemble. One of these was to treat the data store itself effectively as a code repository. And so shared development environments became essential for many of our customers to be productive and successful. 

For code shops that rely on shared development environments, adopting Atelier might seem too complicated. This article aims to provide a practical example to guide your team towards success with Atelier. 

You can find an overview of the problems and solutions in this article here, which is a good place to start. This article assumes that you are familiar with the concepts introduced there. 

Last comment 2 January 2019
+ 7   0 2
266

views

+ 7

rating

The goal of this article is to give users of InterSystems products background on source control in general, and how it can be used with Atelier, an Eclipse plugin. Specifically, I'll be discussing what to do when all of your developers share a single dev instance of an InterSystems product where they can edit and compile code. For more information about the implementation details, and sample workflow, see Michelle Stolwyk's DC post giving a Perforce example. Once you have a better understanding of the concepts and have some ideas of how you might want to implement this on your own system, we suggest reaching out to your InterSystems Sales team to help tailor the setup to your organization’s needs.

Last comment 23 December 2018
+ 2   2 2
263

views

+ 2

rating

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.

Last comment 22 November 2018
+ 10   1 5
1569

views

+ 10

rating

Is there a responsive way to detect a source code change without using a source control hook?

Update

I have my own custom unit test tool which has lots of extra functions that I find useful such as Asserting HL7 Transformers and REST targets.

I have a studio hook that will send an event signal to my test runner that will automatically re-run a specific test class or test suite, for which I have a test runner viewing page that updates with the results.

There are some environments that already have a studio class registered and I don't want to shim something in-between the two.

I've been digging around for some other solutions, but all I can come up with is scanning the ^oddCOM global every second for items in my watch list, which actually only consumes a few milliseconds. If I can't find a more responsive alternative then I will probably go with this approach.

Last answer 16 November 2018 Last comment 16 November 2018
+ 1   0 5
156

views

+ 1

rating

Hi Everyone!

I have a question about how teams are using Atelier, in my experience, using a single-server/multi-developer environment is becoming problematic for us, especially when using GitHub to source control our code, let me explain...

If one developer is working on some code and is syncronising with the server and then another makes changes on that files, a merge process occurs for both developers as they both receive each others code. Also, when one subsequently commits to GitHub, they will have their work and the potentially partial work of their colleague added to the commit; which would make cherry picking/rolling back very difficult and also the traceability/context is lost. Similarly, if branches are used (although we don't use them much for this project currently) it would be syncing different branches constantly too..

Last answer 18 October 2018
0   0 5
0

comments

183

views

0

rating

If you are attending Global Summit 2018 please be sure to say hello to George James Software in the Partner Pavilion.

You are also invited to the informal lunchtime meeting we're hosting at Global Summit on Tuesday 2nd October from 1pm in Indian Paintbrush, a meeting room at the conference venue. We will be previewing the next versions of Deltanji, our integrated source code management solution, and Serenji, our editor and debugger.

+ 10   0 2
0

comments

169

views

+ 10

rating

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.

Last comment 9 August 2018
0   0 2
180

views

0

rating

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

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 the sixth article let's discuss main components you'll need to run a continuous delivery pipeline with containers and how they all work together.

In this article, we'll build Continuous Delivery configuration discussed in the previous articles.

Last comment 4 July 2018
+ 6   2 7
603

views

+ 6

rating

Hi, Community!

What is your favorite issue tracking system for projects with InterSystems Data Platform? What did you use and what are you using now?

In projects with InterSystems Data Platform, I worked with Redmine, JIRA, Trello. A lot of code versioning systems now have this feature too (Gitlab, Github).

Now my favorite for small and medium projects is Github, because it is simple, is very close to code (commit-issue linkage) and it has kanban).

E.g. see the DC public GitHub project (and add your issue request ;)

What is your choice?

Last comment 6 June 2018
+ 1   0 5
407

views

+ 1

rating

Hi! I have a local project written on Cache and Atelier on my PC. I need to move it to notebook. Tried to export globals, classes, MAC-programms and csp with frontend stuff, but after I created my apps on notebook and imported my set, it just didn't work. I think it's because I have some settings on Management Portal, so how can I export portal settings and what I should export to have my working apps on another computer?

Last answer 29 April 2018 Last comment 29 April 2018
0   0 2
125

views

0

rating

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.

+ 3   1 2
0

comments

812

views

+ 3

rating

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.

+ 3   0 2
0

comments

411

views

+ 3

rating

hi, new here, and new to cache and deepsee.

i've been trying to setup a copy of our production server so we can use it for testing/development.

i did a full  backup. moved it to the new server.  ran the DBREST command.  got it to restore but seems like permissions get all messed up. and it just generates a bunch of errors.

is there an easier/better way of doing this?

Last answer 8 March 2018 Last comment 9 March 2018
0   0 2
235

views

0

rating

Hi, Community!

I'm using Git with DeepSee and when I need to do a commit to the git repo I'm exporting ALL the pivots and dashboards from the namespace. But I can forget to do that) And it can take time for a large system.

What is the way to manage automatical export of DeepSee artefacts which we are editing in UI (Cubes, Pivots, Dashboards, Pivot Variables, Term lists, Shared Measures) into files every time when I push Save button?

Last answer 7 March 2018 Last comment 7 March 2018
0   0 2
139

views

0

rating

Let's say I want to execute  this cache script (saved as test.txt) from OS terminal:

zn "USER"
write 1
zn "%SYS"
write 2
halt

Executing the following command in a terminal:

csession cache < test.txt

Would yield this output:

$ csession cache < script.txt

Node: gitlab-test, Instance: CACHE

USER>

USER>
1
USER>

%SYS>
2
%SYS>
Job succeeded

Is there a better way to run these scripts?

Currently I have two problems:

  1. I have several variables defined in my bash script, what's the best approach to pass them into Caché? 
  2. I can't capture script input (for example write 1)

 

As for 1 there are two solutions I found

Last answer 19 February 2018
+ 1   0 3
0

comments

290

views

+ 1

rating

I am wondering about upgrading our Healthshare mirrored environment to the latest release. Has anyone upgraded recently to what version and what kind of effort was put into it. I am thinking it will take 2 analysts full time for 3 months. Am I out of the ball park on this estimate? We have bout 600 operations, Processes and services. What are some of the benefits we get from upgrading and what are some of the problems you ran into during the upgrade? Any information you have to share would be greatly appreciated.
Thanks

Last answer 1 February 2018 Last comment 4 January 2018
0   0 3
227

views

0

rating

Hi

I am in the process of trying to implement version control software with studio.  Has anyone got any recommendations (either Linux based/windows based) as a place to start I have installed Gitlab and I wanted to know whether anyone has come across any obstacles using this.

I was also wondering whether anyone has developed any hooks for Gitlab that works well with Studio as I would prefer if there was a more integrated solution with studio?  Any help with this would be great.

Thank you.

 

Kind Regards,

 

Salma

Last answer 19 January 2018 Last comment 22 January 2018
0   0 4
387

views

0

rating

Hi, Community!

Someday you find yourself having a wonderful class package which can be helpful in several projects. So it is a library package.

How to make the classes available for different namespaces in Caché? There are two ways (at least two ways familiar to me):

1. Start the name of the package with %, like %FantasticLib.SuperClass. Wrong way.

If you do that the class would be placed in %SYS and would be available in other namespaces.

This is wrong because of the two reasons:

1. The class will be wiped out with the next Caché update (as all the %SYS Namespace).

2. InterSystems can introduce its own %FantasticLib package.

3. You need to turn off 'read-only' flag on CACHELIB database to install the % class in it which reduces the security level of the system and makes the installation more complicated

Last comment 8 January 2018
+ 1   0 3
249

views

+ 1

rating

Hi

When trying to sync a class to the server where the server class has been updated by another user, I, as expected, get the Conflict Resolution Wizard.

I can then use the wizard to copy code from the server side to my local copy using the arrows also as expected.

But when I have integrated the remote code into what I think is my local copy how do I save it so that it gets integrated into my local copy and synchronised to the server.

I find if I click the 'Save Local Copy' button it ignores the changes I have made in the wizard and simply overwrites the remote class with whatever I had originally in my local copy

Last answer 22 September 2017 Last comment 19 September 2017
0   0 5
316

views

0

rating

Hi
I would like to follow any change made in the production IE -
date,time, user,production,service/process/operation - name, item changed, value before change, value after change.
Is there a way I can get this data & trap the act of change in order to log this data.
Thanks Simcha

Last answer 20 July 2017 Last comment 17 July 2017
0   0 1
169

views

0

rating