DE-RSE / un-deRSE23-breakouts

8 stars 3 forks source link

BOS proposal: Continuous Integration (and the likes) #2

Open pancetta opened 1 year ago

pancetta commented 1 year ago

We would like to set up a session on continuous integration containing e.g.

Anyone interested in this?

uekerman commented 1 year ago

Something that is more and more important for us (meaning the research software preCICE): How to test over multiple repositories with downstream and upstream dependencies. @MakisH

MakisH commented 1 year ago

Yes, indeed, I would be very interested in contributing! :smile:

pgierz commented 1 year ago

I just proposed my own session for containers, but I would also be extremely interested in joining this group as well...

led02 commented 1 year ago
pancetta commented 1 year ago

Thanks for all your input! Looks like we should do this session, then. But, well, how? Talks? Hands-on? Discussion? Let me hear what you think.

MakisH commented 1 year ago

Thanks for all your input! Looks like we should do this session, then. But, well, how? Talks? Hands-on? Discussion? Let me hear what you think.

I would be very interested in tutorial-like short talks, with some longer slot to try any of the presented tools hands-on, with the help of the presenter, on some pre-defined tasks. We would not be able to try everything, but on the other hand, we could choose and focus on the most relevant for each one of us.

Another aspect (maybe in parallel or after the talks) could be collaboratively creating a map of tools, with short description and common use cases. We could even compare/relate some of them (e.g., "Apptainer is like Docker, but you don't need root access").

HeidiSeibold commented 1 year ago

I added a label to this break-out. Can you check if you feel it is appropriate and change it if not? Let me know if you have any questions.

pancetta commented 1 year ago

So, it looks like we have plenty of items we could talk about. How about we have some opening talk, giving an introduction to the topic, and then we start to gather these items, make a wish list and decide how we could continue with this? Unless.. we actually find people willing to give short tutorial talk as proposed by @MakisH.

jakob-fritz commented 1 year ago

If you want to, I could give a brief introductory talk before a discussion.

However, if there are people willing to give a tutorial talk, we can also shorten or remove my talk from the BOS

HeidiSeibold commented 1 year ago

So what I need from you to be able to make a decision on this breakout are the following infos:

Who could be interested in collaborating on this?

Among others: @jakob-fritz @MakisH @led02 @pgierz @uekerman @chillenzer @rcaspart @trahflow

How much time do you need for this?

90 minutes should be ok, looks like we rather start with a get-together than a full-fledged event.

Abstract

Continuous integration techniques, or more general Cx techniques have become the de-facto standard (and synonym) for running various tasks whenever code changes in a repository. These tasks range from running a full-fledged test suite, creating new binaries/containers/documentations, to checking code styles. Yet, what are "good practices" in this field? Should you rather run/trust Github Actions or your own local Gitlab runner? Can you do both? How do you do Cx on HPC hardware? We would like to discuss these and other questions during this break-out session, which should bring together experts from various fields as well as interested attendees eager to learn what this is about. We plan to have a short introductory talk, followed by a discussion on the various questions and planning for future activities.

jakob-fritz commented 1 year ago

As I cannot edit, here my reply (partly doubles with edit from @pancetta)

Who could be interested in collaborating on this? From my feeling (and who provided a "thumbs-up") I assume at least the following people to be interested: @uekerman @pgierz @chillenzer @rcaspart @MakisH @led02 @pancetta Probably some more, when they see it in the schedule. I also talked with some people about the topic, but don't have their Github-Handle.

How much time do you need for this? 90 Minutes should be fine. It could be longer, but I assume, that it makes sense to keep it short as a starting-point

Abstract WIP

Would Tuesday Morning be doable for you? I will be there the whole time, so no constraints from me. But Tuesday Morning is no conference. I assume, you mean Thursday Morning? (Just for clarity. As said, I am happy with any time-slot)

pancetta commented 1 year ago

@jakob-fritz please check the abstract and ping me if you spot BS or want to add stuff.

jakob-fritz commented 1 year ago

@jakob-fritz please check the abstract and ping me if you spot BS or want to add stuff.

@pancetta Looks good to me. Thanks for writing

MakisH commented 1 year ago

So, it looks like we have plenty of items we could talk about. How about we have some opening talk, giving an introduction to the topic, and then we start to gather these items, make a wish list and decide how we could continue with this? Unless.. we actually find people willing to give short tutorial talk as proposed by @MakisH.

I meant that multiple people give short "pitch talks" about tools / features / concepts, and then they discuss them in small groups.

In that context, I could bring together a short talk on how (we try) to combine components from different repositories, if there is interest, as @uekerman mentioned above:

Something that is more and more important for us (meaning the research software preCICE): How to test over multiple repositories with downstream and upstream dependencies. @MakisH

We currently approach this with multiple Docker images and Docker Compose, but I am looking into different ideas at the moment.

pancetta commented 1 year ago

Hi! I just added the "Accepted" label to this BOS. Welcome on board! https://un-derse23.sciencesconf.org/program

pancetta commented 10 months ago

Hi all, the unconference is only 3 weeks away now! On day 1 there will be a breakout blitz where all session organizers should advertise their sessions. 1 minute, 1 slide, let people know what you intend to do. Please prepare this slide in advance and add it right here (PDF please), by September 20.

uekerman commented 10 months ago

I will unfortunately not be able to join the un-deRSE23 :disappointed:

jakob-fritz commented 10 months ago

Hi all, the unconference is only 3 weeks away now! On day 1 there will be a breakout blitz where all session organizers should advertise their sessions. 1 minute, 1 slide, let people know what you intend to do. Please prepare this slide in advance and add it right here (PDF please), by September 20.

Here the slide for the breakout blitz Breakout_blitz_CI.pdf

If someone thinks, the slide should be changed, please tell me with info on what needs changing, or propose a different slide.

MakisH commented 10 months ago

Thank you for preparing the slide, @jakob-fritz. It looks very nice! Should we prepare something else till then, or let it flow as it comes? I am happy to prepare something (collection of topics, or even some mini-talk), I just don't know what yet.

pancetta commented 10 months ago

Sure! If you have a topic for a pitch talk or want to show something, go ahead. The same is true for everyone else around here, of course 😃

MakisH commented 10 months ago

With around a week remaining, let me summarize a bit what we have so far.

Time: 90min -> This is probably too short for my previous suggestion of having mini-tutorials in groups. Let's indeed keep it at a "getting to know each other" level.

Potential speakers:

Topic ideas:

My interests and goals

Of the above ideas, I am particularly interested in:

  1. How to combine GitHub Actions and GitLab CI (e.g., for avoiding lock-in and for resilience)
  2. How to do Cx on HPC hardware
  3. Providing dedicated / special executors

If someone wants to give a talk on these topics, I would be most interested to attend it! :smiley:

I am a bit worried about the short time and the breadth of the topic. I think it would be useful to start with finding some common ground with questions of the kind "who already knows about X, Y, Z?" and focus on the new aspects. We could have a whiteboard / flipchart paper and vote about topics we would like to touch before the session starts.

I would enjoy finding out who has similar interests as I have and tries to solve similar problems.

I would also enjoy learning about the existence and basic concepts of useful tools, as well as forming a picture in my mind of what practices and tools are the most applied/used in our community, and what is still rather a desire than a common practice.

Suggested agenda

With the current state, I suggest starting with the suggested talk, to touch a range of topics on a concrete project (20min). @jakob-fritz could then take over the moderation of the discussion that this triggers, starting with the topics people have expressed interest in discussing (here or on an asynchronous on-site voting, to save time).

Since I understand that we are really self-organized, please upvote if all this makes sense, or please stop me if I have formed the wrong impression of what we want to do and what would be interesting.

jngrad commented 10 months ago

If you already have a HackMD or scratch pad for this BOS, I would be happy to put down some elements of answers based on my own experience with CI/CD.

jngrad commented 10 months ago

A "RSE for HPC" working group was formed during deRSE23 at the initiative of @CaptainSifff. The main topics were about CI and benchmarking for HPC. You can find the meeting notes here. We haven't met again since April, in part because members of the group were quite busy working on the "RSE position paper no. 002" and the "Teaching RSE" papers.

If there is enough interest for CI in HPC, maybe we could revive the working group?

MakisH commented 10 months ago

If you already have a HackMD or scratch pad for this BOS, I would be happy to put down some elements of answers based on my own experience with CI/CD.

Let's start with this, we can clean it up later: https://pad.gwdg.de/s/Tzg1yx3ae#

If there is enough interest for CI in HPC, maybe we could revive the working group?

Sounds quite interesting and related! I am getting a bit overwhelmed of regular working group meetings at the moment, but I think a summary of your main findings in the group so far would be helpful. We can then see if people want to revive it (but April is not too long ago, to consider it gone).

jakob-fritz commented 10 months ago

My idea on an introduction was to give a brief talk (15 min) where I want to touch a few topics to spark discussion. Some of the topics that I planned to touch are the same, that I talked about in my presentation in the HiRSE Summer of Testing on Youtube.

But also some of the topics that you put in the list under @pancetta will be in the presentation. One of the topics will (briefly) be the combination of Github-Actions and Gitlab-CI.

After the introductory talks, I can also moderate the discussion.

jngrad commented 10 months ago

@MakisH an official pad has just be created for this breakout session; should the contents from your pad be transferred over to the newly created one, or should it be kept separate as a pre-session pad?

MakisH commented 10 months ago

@MakisH an official pad has just be created for this breakout session; should the contents from your pad be transferred over to the newly created one, or should it be kept separate as a pre-session pad?

Feel free to copy anything you find useful, in any format it best serves the session. I just wanted to create something to get the discussion going. :slightly_smiling_face:

pancetta commented 9 months ago

Here is the main hub for taking notes: https://pad.gwdg.de/FkFJTslFQhq-UF3Es6q4rw#

pancetta commented 9 months ago

Have fun with the session(s)! Please add the pad you're using also here for people to see what you did.

If possible, please prepare a 1 minute wrap up of your session for the farewell session on Thursday afternoon! What did you do in the session, how would you like to continue, how can people contribute after the unconference etc. We'll go through the blitz slides again one by one as in the blitz session.

jakob-fritz commented 9 months ago

A "RSE for HPC" working group was formed during deRSE23 at the initiative of @CaptainSifff. The main topics were about CI and benchmarking for HPC. You can find the meeting notes here. We haven't met again since April, in part because members of the group were quite busy working on the "RSE position paper no. 002" and the "Teaching RSE" papers. If there is enough interest for CI in HPC, maybe we could revive the working group?

Update on the working group mentioned above: The next meeting will take place on Oct 5th 15:00 CEST. We will meet here: https://webconf.fz-juelich.de/b/fri-4vb-wpv-tsk