Commit b6b6ff4f authored by Uwe Jandt (DESY, HIFIS)'s avatar Uwe Jandt (DESY, HIFIS)
Browse files

Merge branch 'master' into deeplink-checker-software.hifis.net

parents 4be8d025 492ce474
Pipeline #75713 passed with stages
in 4 minutes and 49 seconds
image: ruby:2.7
image: ruby:3.0
stages:
- build
......@@ -18,15 +18,20 @@ stages:
key: latest
paths:
- vendor/bundle
- assets/img/jumbotrons
.cache_production: &cache_production
cache:
key: production
paths:
- vendor/bundle
- assets/img/jumbotrons
.common_production: &production_before_script
before_script:
- "[[ -x \"$(command -v apt-get)\" ]] && \
apt-get update && \
apt-get install -y ffmpeg"
- gem install bundler --no-document
- bundle config set without 'test'
- bundle install --jobs $(nproc)
......@@ -34,6 +39,9 @@ stages:
.common_latest: &latest_before_script
before_script:
- "[[ -x \"$(command -v apt-get)\" ]] && \
apt-get update && \
apt-get install -y ffmpeg"
- "[[ -f \"Gemfile.lock\" ]] && rm Gemfile.lock"
- bundle config set without 'test'
- bundle install --jobs $(nproc) --without test "${FLAGS[@]}"
......@@ -51,6 +59,7 @@ stages:
variables:
<<: *common_variables
script:
- "bash scripts/create_jumbotrons.sh assets/img/jumbotrons/"
- "bundle exec jekyll build --future \
--config _config.yml \
-d public$SUBPATH \
......@@ -64,6 +73,7 @@ stages:
variables:
<<: *common_variables
script:
- "bash scripts/create_jumbotrons.sh assets/img/jumbotrons/"
- "bundle exec jekyll build --future \
--config _config.yml,_config_reviewapps.yml \
-d public$SUBPATH \
......@@ -107,18 +117,6 @@ build:latest:
image: ruby:latest
allow_failure: true
# Job runs jekyll build latest dependencies,
# puts everything in a sub-directory while specifying baseurl.
build:production:subpath:
<<: *builds
<<: *production_before_script
image: ruby:latest
variables:
<<: *common_variables
SUBPATH: /$CI_PROJECT_NAME
extends:
- .artifacts_extension
# Job runs jekyll build with production dependencies,
# puts everything in a sub-directory as required for review apps.
build:production:review-apps:
......@@ -148,8 +146,8 @@ test:htmlproofer:
test:htmlproofer:subpath:
<<: *tests
dependencies:
- build:production:subpath
needs: ["build:production:subpath"]
- build:production:review-apps
needs: ["build:production:review-apps"]
# Job tests external links in addition to test:htmlproofer job.
test:htmlproofer:external_links:
......@@ -160,12 +158,13 @@ test:htmlproofer:external_links:
script:
- "bundle exec htmlproofer \
--internal-domains localhost:4000 \
--url-ignore 'https://www.openstoragenetwork.org' \
--url-ignore '/www.openstoragenetwork.org/,/www.hzdr.de/,/indico4.twgrid.org/,/aai.helmholtz.de/,/cvs.data.kit.edu/' \
--assume-extension public/"
rules:
- if: '$CI_PIPELINE_SOURCE == "schedule"'
tags:
- internal
allow_failure: true
review:
stage: review
......@@ -205,20 +204,3 @@ include:
- template: 'Workflows/MergeRequest-Pipelines.gitlab-ci.yml'
- template: 'Verify/Accessibility.gitlab-ci.yml'
- local: '/.gitlab/ci/a11y.gitlab-ci.yml'
pages:
image: alpine:latest
stage: deploy
variables:
GIT_STRATEGY: none
script:
- mv public/$CI_PROJECT_NAME/* public/.
- rmdir public/$CI_PROJECT_NAME
dependencies:
- build:production:subpath
needs: ["build:production:subpath"]
artifacts:
paths:
- public
rules:
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
......@@ -8,7 +8,7 @@ variables:
https://$APPS_DOMAIN/review-apps/$CI_PROJECT_PATH_SLUG/$CI_COMMIT_REF_SLUG/partners
https://$APPS_DOMAIN/review-apps/$CI_PROJECT_PATH_SLUG/$CI_COMMIT_REF_SLUG/team
https://$APPS_DOMAIN/review-apps/$CI_PROJECT_PATH_SLUG/$CI_COMMIT_REF_SLUG/cloud-platform
https://$APPS_DOMAIN/review-apps/$CI_PROJECT_PATH_SLUG/$CI_COMMIT_REF_SLUG/you-and-hifis
https://$APPS_DOMAIN/review-apps/$CI_PROJECT_PATH_SLUG/$CI_COMMIT_REF_SLUG/hifis-services-for-you
https://$APPS_DOMAIN/review-apps/$CI_PROJECT_PATH_SLUG/$CI_COMMIT_REF_SLUG/contact
https://$APPS_DOMAIN/review-apps/$CI_PROJECT_PATH_SLUG/$CI_COMMIT_REF_SLUG/publications
https://$APPS_DOMAIN/review-apps/$CI_PROJECT_PATH_SLUG/$CI_COMMIT_REF_SLUG/faq
......
......@@ -18,7 +18,7 @@ and get feedback regarding how to improve its appearance and content.
Note:
In case you are just interested to know how to contribute with a
blog post to _HIFIS Software_ web-page you can find a
[blog post](https://software.hifis.net/tutorials/2019/11/22/How-to-Create-a-new-Blog-Post "How to Create a New Blog Post?")
[blog post]({% post_url 2019/11/2019-11-22-How-to-Create-a-new-Blog-Post %} "How to Create a New Blog Post?")
explaining the suggested workflow in the blog post section
of the web-page.
......
......@@ -10,6 +10,6 @@ gem 'jekyll-feed', '~> 0.15.1'
gem "jekyll-sitemap", "~> 1.4"
group :test do
gem 'html-proofer', '~> 3.18.6'
gem 'html-proofer', '~> 3.19.1'
gem 'yaml-lint', '~>0.0.7'
end
......@@ -8,12 +8,12 @@ GEM
em-websocket (0.5.2)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0.6.0)
ethon (0.12.0)
ffi (>= 1.3.0)
ethon (0.14.0)
ffi (>= 1.15.0)
eventmachine (1.2.7)
ffi (1.14.2)
ffi (1.15.0)
forwardable-extended (2.6.0)
html-proofer (3.18.6)
html-proofer (3.19.1)
addressable (~> 2.3)
mercenary (~> 0.3)
nokogumbo (~> 2.0)
......@@ -59,11 +59,11 @@ GEM
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.4.0)
mini_portile2 (2.5.0)
nokogiri (1.11.1)
mini_portile2 (2.5.1)
nokogiri (1.11.3)
mini_portile2 (~> 2.5.0)
racc (~> 1.4)
nokogumbo (2.0.4)
nokogumbo (2.0.5)
nokogiri (~> 1.8, >= 1.8.4)
parallel (1.20.1)
pathutil (0.16.2)
......@@ -91,7 +91,7 @@ PLATFORMS
ruby
DEPENDENCIES
html-proofer (~> 3.18.6)
html-proofer (~> 3.19.1)
jekyll (~> 4.2.0)
jekyll-feed (~> 0.15.1)
jekyll-paginate (~> 1.1.0)
......
......@@ -20,43 +20,35 @@ is built using Jekyll.
``` bash
git submodule update --init --recursive
```
5. Build and preview the web page.
5. Optionally, on _Linux_ systems install `FFmpeg` to be used to scale
Jumbotron images.
On systems with `Apt`
```bash
apt install ffmpeg
```
_or_ on systems with `Yum`
```bash
yum install ffmpeg
```
6. Optionally, on _Linux_ systems create scaled variants of Jumbotron images to
be used on different devices.
```bash
bash scripts/create_jumbotrons.sh assets/img/jumbotrons/
```
_Note: Be aware that missing scaled variants of Jumbotron images may cause
issues in your local installation when rendering the page in the next step._
7. Build and preview the web page.
```bash
bundle exec jekyll serve --future
```
6. Add content.
8. Add content.
Execute the commands above from the root of your repository.
More information is available in Jekyll's
[documentation](https://jekyllrb.com/docs/)
## Add yourself as a team member
There are basically two variants of achieving this:
### Do it yourself
1. [Git-clone](https://git-scm.com/docs/git-clone) the repository and
[Git-checkout](https://git-scm.com/docs/git-checkout) into a new branch
(with option `-b <new-branch-name>`)
2. Edit [_data/hifis_team.yml](_data/hifis_team.yml) and add your information.
3. Add `<your_id_here>.md` into the `_members` folder, containing at least the
following frontmatter:
```yaml
---
layout: member
title: <your_last_name>, <your_first_name>
data: <your_id>
---
```
4. Create a
[merge request](https://docs.gitlab.com/ce/gitlab-basics/add-merge-request.html)
in GitLab.
5. Let someone review and merge your changes into branch `master`.
### Let someone else do it :)
## Fetch the latest builds from gitlab
1. Create a new issue, using the _add team member_ template.
2. Fill in at least the required information.
The latest master branch (production) build artifacts can be downloaded using
* https://gitlab.hzdr.de/hifis/hifis.net/-/jobs/artifacts/master/download?job=build:production
......@@ -273,6 +273,6 @@ ufz:
# DZNE
# GEOMAR
# GSI
# HZG
# hereon
# HZI
# MDC
......@@ -30,7 +30,45 @@
# - type: facebook # c.f. _data/social_platforms.yml
# link_as: https://www.facebook.com/my-profile-url
# show_as: "My Profile"
- id: belayneh
name: "Belayneh, Bezaye Tesfaye"
location:
campus: gfz
position: "Research Software Engineer"
rank: 0
associate: false
cluster: software
- id: brinckmann
name: "Brinckmann, Nils"
location:
campus: gfz
position: "Full Stack Developer"
rank: 0
associate: true
- id: dolling
name: "Dolling, Maximilian"
location:
campus: gfz
position: "Research Software Engineer (RSE)"
rank: 0
associate: false
cluster: software
- id: dworatzyk
name: "Dworatzyk, Katharina"
location:
campus: dlr
position: "Research Assistant"
rank: 0
associate: false
cluster: software
- id: erxleben
name: "Erxleben, Fredo"
location:
campus: hzdr
position: "Research Software Engineer and Trainer"
rank: 0
associate: false
cluster: software
- id: guelzow
name: "Guelzow, Volker"
image: "Volker_Guelzow.jpg"
......@@ -39,8 +77,15 @@
position: "Coordinator and Speaker of HIFIS"
associate: false
rank: 4
associate: false
cluster: overall
- id: hueser
name: "Hüser, Christian"
location:
campus: hzdr
position: "Research Software Engineer and Trainer"
rank: 0
associate: false
cluster: software
- id: finke
name: "Finke, Ants"
image: "Ants_Finke.jpg"
......@@ -49,7 +94,6 @@
position: "Coordinator"
associate: false
rank: 3
associate: false
cluster: overall
- id: konrad
name: "Konrad, Uwe"
......@@ -59,7 +103,6 @@
position: "Coordinator"
associate: false
rank: 3
associate: false
cluster: overall
- id: jandt
name: "Jandt, Uwe"
......@@ -69,7 +112,6 @@
position: "HIFIS Office Management"
associate: false
rank: 2
associate: false
cluster: overall
- id: fuhrmann
name: "Fuhrmann, Patrick"
......@@ -79,7 +121,6 @@
position: "Backbone Cluster Management"
associate: false
rank: 1
associate: false
cluster: backbone
- id: klotz
name: "Klotz, Andreas"
......@@ -89,7 +130,6 @@
position: "Cloud Cluster Management"
associate: false
rank: 1
associate: false
cluster: cloud
- id: spicker
name: "Spicker, Annette"
......@@ -99,7 +139,6 @@
position: "Cloud Cluster Management"
associate: false
rank: 1
associate: false
cluster: cloud
- id: huste
name: "Huste, Tobias"
......@@ -109,5 +148,36 @@
position: "Software Cluster Management"
associate: false
rank: 1
cluster: software
- id: schlauch
name: "Schlauch, Tobias"
location:
campus: dlr
position: "Research Software Engineer"
rank: 0
associate: false
cluster: software
- id: stoffers
name: "Stoffers, Martin"
location:
campus: dlr
position: "Consultant and Trainer"
rank: 0
associate: false
cluster: software
- id: wetzel
name: "Wetzel, Tim"
location:
campus: desy
position: "HIFIS Backbone Services"
associate: false
rank: 0
cluster: backbone
- id: ziegner
name: "Ziegner, Norman"
location:
campus: ufz
position: "Linux System Engineer"
rank: 0
associate: false
cluster: software
......@@ -11,34 +11,31 @@
# original Markdown.
header:
- title: News
url: news/
- title: "News & Blog"
url: "news/"
- title: Guidelines
url: "guidelines/"
- title: "Events"
url: "events"
- title: Mission
url: "mission/"
- title: "Services"
url: "services/"
- title: FAQ
url: "faq.html"
- title: Roadmap
url: "roadmap/"
- title: Partners
url: "partners.html"
- title: Team
url: "team.html"
- title: Job Offers <i class="fas fa-bell"></i>
url: "job_offers.html"
- title: Contact
url: "contact.html"
footer:
- title: Contact
url: "contact.html"
- title: FAQ
url: "faq.html"
- title: Imprint
url: "https://www.desy.de/imprint"
......
---
title: "deRSE19 - Conference for Research Software Engineers in Germany"
layout: event
organizers:
- hammitzsch
- <a href="https://de-rse.org/en/conf2019/contact.html">deRSE community</a>
type: conference
start:
date: "2019-06-04"
end:
date: "2019-06-06"
location:
campus: "GFZ, Telegrafenberg"
room: "Haus H, A56"
excerpt:
" Conference for Research Software Engineers in Germany. "
---
Following the success of the first three international Conference of Research Software Engineers in the UK, the first international conference in Germany addressing research software and the people behind it within the German research landscape will be held at the Albert Einstein Science Park in Potsdam on 4-6 June 2019.
More information on the event can be found on the
[event page](https://de-rse.org/en/conf2019/).
---
title: Software Carpentry Workshop
layout: event
organizers:
- belayneh
- dolling
lecturers:
- belayneh
- dolling
type: workshop
start:
date: "2019-11-26"
time: "09:00"
end:
date: "2019-11-27"
time: "18:00"
location:
campus: "Online Event"
fully_booked_out: true
registration_link: https://docs.google.com/forms/d/e/1FAIpQLScF37yq-HrE6JuGTz6zoFhAfGNowIE2Lr4e900IA0D_tmac2Q/closedform
registration_period:
from: "2019-10-30"
to: "2019-11-13"
excerpt:
"This Software Carpentry workshop will teach Shell, Git and R programming for researchers."
---
## Goal
Introduce scientists and PhD students to a powerful toolset to enhance their
research software workflow.
## Content
This workshops contains the following topics:
* Introduction to _Shell_ scripting
* Using _Git_ as version control system (VCS)
* Introduction to the _R_ programming language
Details can also be found directly at the
[GFZ event page](https://swc-bb.git-pages.gfz-potsdam.de/swc-pages/2019-11-26-Potsdam-Berlin/).
## Requirements
No prior knowledge is required to attend this workshop.
---
title: Introduction to Snakemake
layout: event
organizers:
- Steinbach, Peter
lecturers:
- Steinbach, Peter
type: workshop
start:
date: "2019-12-11"
time: "14:00"
end:
time: "17:00"
location:
campus: hzdr
room: "104/215"
fully_booked_out: true
registration_link: https://schedule.tii.tu-dresden.de/event/14/
registration_period:
from: "2019-12-01"
to: "2019-12-11"
excerpt: "This short course is meant to teach participants the automation
of pipelines. For this, the snakemake workflow engine is introduced."
---
## Content
This short course is meant to teach participants the automation of pipelines.
For this, the snakemake workflow engine is introduced.
It will be presented how to write recipes with this engine which are independent of
the programming language used.
Further, the capabilities of snakemake to parallelize these workflows are
demonstrated.
To conclude, a custom workflow will then be submitted to the cluster to
run on multiple machines.
The course will be fully interactive.
## Prerequesits
Users will work on hemera and are expected be sufficiently introduced to
the slurm scheduling system.
{{ page.path }}
---
title: The Carpentries Instructor Training
layout: event
organizers:
- huste
- dolling
type: workshop
start:
date: "2020-01-20"
end:
date: "2020-01-21"
excerpt:
The Carpentries Instructor Training will provide the participants with the
skills and information needed to become a certified Carpentries instructor.
---
## Content
The Carpentries[^1] is an organization which aims to be the
leading inclusive community teaching data and coding skills.
The Carpentries Instructor Training will provide the participants with the
skills and information needed to become a certified Carpentries instructor.
You can find further information about the process and content of this
training in the course material[^2].
{:.treat-as-figure}
The Carpentries logo
[!["The Carpentries Logo"]({{ site.directory.images | append: 'third-party-logos/TheCarpentries.svg' | relative_url }} "The Carpentries Logo")][1]
This training will be held in two different Helmholtz locations at the same
time: at GFZ in Potsdam and at HZDR in Dresden.
Both Helmholtz centers are currently a member organization of The Carpentries.
The methods and approaches taught will enable us to offer high-quality courses
in 2020 and beyond.
## References
[^1]: [About page of The Carpentries website][1]
[^2]: [The Carpentries (Software, Data, and Library Carpentry) instructor training course material][2]
[1]: https://carpentries.org/about/
[2]: https://carpentries.github.io/instructor-training/
---
title: "Machine Learning Hackathon at GFZ"
layout: event
organizers:
- "Machine Learning community at GFZ"
type: Hackathon
start:
date: "2020-03-05"
time: "09:00"
end:
date: "2020-03-05"
time: "18:00"
location:
campus: "GFZ, Telegrafenberg"
room: "Vortragsraum 2 and 3, Haus H"
excerpt: