Skip to content

Commit a19fce8

Browse files
committed
deploy: 439009e
0 parents  commit a19fce8

255 files changed

Lines changed: 11774 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.nojekyll

Whitespace-only changes.

COPYRIGHT

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
Intellectual Property Notice
2+
----------------------------
3+
4+
The RSE-ops landscape is licensed under the MIT license (LICENSE).
5+
6+
Copyrights and patents in RSE-ops landscape project are retained by
7+
contributors. No copyright assignment is required to contribute to
8+
this project.
9+
10+
11+
SPDX usage
12+
------------
13+
14+
Individual files contain SPDX tags instead of the full license text.
15+
This enables machine processing of license information based on the SPDX
16+
License Identifiers that are available here: https://spdx.org/licenses/

Dockerfile

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
FROM pandoc/latex
2+
3+
# docker build -t latex2md .
4+
# docker run -it -v $PWD:/code latex2md
5+
6+
LABEL maintainer "@vsoch"
7+
ENV DEBIAN_FRONTEND noninteractive
8+
9+
RUN apk update && apk add python3
10+
ADD . /code
11+
RUN chmod u+x /code/entrypoint.sh
12+
WORKDIR /code
13+
14+
ENTRYPOINT ["/bin/sh", "/code/entrypoint.sh"]

Makefile

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
.PHONY: all build run
2+
PROJECT_ROOT = $(shell pwd)
3+
4+
all: build
5+
docker run -it -v ${PROJECT_ROOT}:/code latex2md
6+
7+
build:
8+
docker build -t latex2md .
9+
10+
run:
11+
bundle exec jekyll serve

NOTICE

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
This work was produced under the auspices of the U.S. Department of
2+
Energy by Lawrence Livermore National Laboratory under Contract
3+
DE-AC52-07NA27344.
4+
5+
This work was prepared as an account of work sponsored by an agency of
6+
the United States Government. Neither the United States Government nor
7+
Lawrence Livermore National Security, LLC, nor any of their employees
8+
makes any warranty, expressed or implied, or assumes any legal liability
9+
or responsibility for the accuracy, completeness, or usefulness of any
10+
information, apparatus, product, or process disclosed, or represents that
11+
its use would not infringe privately owned rights.
12+
13+
Reference herein to any specific commercial product, process, or service
14+
by trade name, trademark, manufacturer, or otherwise does not necessarily
15+
constitute or imply its endorsement, recommendation, or favoring by the
16+
United States Government or Lawrence Livermore National Security, LLC.
17+
18+
The views and opinions of authors expressed herein do not necessarily
19+
state or reflect those of the United States Government or Lawrence
20+
Livermore National Security, LLC, and shall not be used for advertising
21+
or product endorsement purposes.
22+

about.html

Lines changed: 337 additions & 0 deletions
Large diffs are not rendered by default.

about/follow-devops.html

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset="utf-8">
5+
<title>Why can't RSE Ops Follow DevOps?</title>
6+
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no">
7+
<meta http-equiv="content-language" content="en">
8+
<link href="/landscape/assets/css/style.css" rel="stylesheet">
9+
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
10+
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:400,700|Roboto+Slab:400,700">
11+
<link rel="icon" type="image/png" href="/landscape/favicon.ico">
12+
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css"/>
13+
14+
</head>
15+
<body>
16+
<div class="container">
17+
<ul id="filters" class="clearfix">
18+
<li><span class="filter"><a style="color:white" href="/landscape/">Rse-ops</a></span></li>
19+
<li><span class="filter"><a style="color:white" href="/landscape/about">Background</a></span></li>
20+
<li><span class="filter"><a style="color:white" href="/landscape/categories">Categories</a></span></li>
21+
<li><span class="filter"><a style="color:white" href="/landscape/choosers">Choose A Tool</a></span></li>
22+
<li><span class="filter"><a style="color:white" href="/landscape/projects">Projects</a></span></li>
23+
<li style="float:right"><span class="filter"><a style="color:white" href="/landscape/sitemap">Sitemap</a></span></li>
24+
<li style="float:right"><span class="filter"><a style="font-weight:600" href="https://github.com/rse-ops/landscape" target="_blank">&lt;/&gt;</a></span></li>
25+
<li style="float:right"><span class="filter"><a style="color:white" href="/landscape/src/rse-ops.pdf" target="_blank">PDF</a></span></li>
26+
</ul>
27+
28+
<p><img src="/landscape/assets/img/rse-sun.png" style="display:block;margin:auto;" /></p>
29+
30+
<h2 id="why-cant-rse-ops-follow-devops">Why Can’t RSE-ops Follow DevOps?</h2>
31+
32+
<div class="card">
33+
34+
<p>The biggest factor that originally seemed to separate RSE-ops with
35+
DevOps was HPC system complexity, and inability to change quickly.
36+
However, clouds now are also increasing in complexity, not just in
37+
services offered, but machines (and general details) relevant to each
38+
service. A second factor is availability of resources. On HPC,
39+
"on-demand" usually means waiting in a queue for your turn. This means
40+
that software development on HPC is a slow task, and typically the
41+
software is not developed alongside the system, but perhaps only used or
42+
tested there after the fact.</p>
43+
<p>For working in the cloud, we operate on the basis of being able to
44+
make services and systems modular. Any piece of software can be
45+
installed when needed on a cloud resource, whereas the process is more
46+
complicated for HPC, primarily needing to be done by someone with
47+
adequate permissions, and in a way that the software can exist alongside
48+
other software and be accessed in a particular way (loaded as a module,
49+
as a container, etc.). On the cloud a piece of software can be run
50+
exactly with a container base that is needed, and there is little or no
51+
concern for dependency with other bases. The two biggest hardware
52+
dependencies that containers have, arguably host MPI and GPU, are also
53+
hugely important factors when figuring out compatibility.</p>
54+
<p>There is also little concern with using updated systems or software –
55+
unlike HPC that needs to always support legacy systems, deployment on
56+
the cloud is more "use and throw away" to easily support whatever system
57+
is desired. As long as services are written in portable languages and
58+
don’t require high performance with respect to node configuration, they
59+
can be run anywhere, and people are agnostic to the details.</p>
60+
<p>This allows developers to work on the bleeding edge and perhaps only
61+
be concerned with supported the latest top systems that might want to
62+
run the software (e.g., Mac, Linux, and Windows latest). Cloud DevOps
63+
also allows for scaling and deploying on demand resources with the only
64+
constraint being cost. For RSE-ops on HPC, the scaling is limited to the
65+
cluster, along with the number of people using it.</p>
66+
<p>A major helper to this current landscape would be well-established
67+
tools to allow for ease of testing for an HPC user. Whether this means
68+
testing on a node allocated for testing on the cluster, or a separate
69+
build system that mimics the cluster environment, being able to trigger
70+
builds and tests alongside a code base with a CI pipeline would greatly
71+
improve the software development life-cycle on HPC. If such a system
72+
existed, and if it were easy for RSE software developers to develop,
73+
test, and deploy their own software, system administrators could better
74+
focus on improving or enhancing the systems instead of managing software
75+
for them. We could even imagine going a step further and having a more
76+
automated ability to use software for the average user. For example, if
77+
a workflow system is better integrated into the cluster, akin to how an
78+
RSE developer could push and trigger builds and tests, an HPC user could
79+
push a workflow to trigger running a test job, and upon success, if
80+
desired or needed, running it at scale. It would be amazing if we could
81+
eliminate the need to ssh in to a log in node, learn how to use a job
82+
manager, and otherwise interact with HPC. To the user, if the cluster
83+
could be exposed as a service with an easy interface to monitor jobs and
84+
job submission could be integrated with the user’s workflow, the speed
85+
of development and analysis would greatly increase.</p>
86+
<p>Obviously, the greatest challenges to making the above a reality come
87+
down to security and centers being able to support more modern
88+
authentication systems. Exposing any cluster resource to be accessible
89+
via continuous integration or version control triggers requires
90+
connecting the resource to external services, which always is a risk,
91+
but there are well developed authentication frameworks for that.</p>
92+
<p>Moving data from some external storage to a cluster resource to be
93+
analyzed is another challenge. A tiny step of progress is the ability to
94+
link a traditional HPC single sign on (SSO) scheme (e.g., LDAP or
95+
Kerberos) to a version control service (e.g., GitLab or GitHub) to allow
96+
for role based access, but it’s not clear how often this is done or if
97+
it’s a good direction.</p>
98+
<br />
99+
100+
<ol class="bibliography"></ol>
101+
102+
</div>
103+
104+
</div>
105+
<br>
106+
<br>
107+
<img id="footer" src="/landscape/assets/img/grass.png">
108+
</div>
109+
</body>
110+
</html>

assets/css/chooser.css

Lines changed: 160 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,160 @@
1+
body {
2+
font-size: 20px;
3+
color: #212529;
4+
font-family: 'Source Sans Pro', sans-serif !important;
5+
}
6+
p {
7+
line-height: 1.5;
8+
margin: 30px 0; }
9+
p a {
10+
text-decoration: underline; }
11+
12+
h1,
13+
h2,
14+
h3,
15+
h4,
16+
h5,
17+
h6 {
18+
font-weight: 200 !important;
19+
font-family: 'Source Sans Pro', sans-serif !important;
20+
}
21+
22+
a {
23+
color: #212529;
24+
-webkit-transition: all 0.2s;
25+
-moz-transition: all 0.2s;
26+
transition: all 0.2s; }
27+
a button:focus, a button:hover {
28+
color: white; }
29+
30+
.badge {
31+
padding-bottom:10px;
32+
padding-top:10px;
33+
}
34+
35+
.fas:focus, .fas:hover {
36+
color: #212529 !important;
37+
}
38+
39+
.social-icon {
40+
padding-left: 5px;
41+
padding-right: 5px;
42+
}
43+
44+
blockquote {
45+
font-style: italic;
46+
color: #868e96; }
47+
48+
.section-heading {
49+
font-size: 36px;
50+
font-weight: 700;
51+
margin-top: 60px; }
52+
53+
.jumbotron {
54+
margin-top: -60px;
55+
margin-bottom:100px;
56+
background-color: whitesmoke;
57+
}
58+
59+
div.sticky {
60+
position: -webkit-sticky;
61+
position: sticky;
62+
top: 0;
63+
padding-top: 15px;
64+
}
65+
66+
.card {
67+
height:200px;
68+
cursor: pointer;
69+
margin: 1px;
70+
}
71+
72+
.card:hover {
73+
transform: scale(1.01);
74+
}
75+
76+
.caption {
77+
font-size: 14px;
78+
font-style: italic;
79+
display: block;
80+
margin: 0;
81+
padding: 10px;
82+
text-align: center;
83+
border-bottom-right-radius: 5px;
84+
border-bottom-left-radius: 5px; }
85+
86+
::-moz-selection {
87+
color: #fff;
88+
background: #0085A1;
89+
text-shadow: none; }
90+
91+
::selection {
92+
color: #fff;
93+
background: #0085A1;
94+
text-shadow: none; }
95+
96+
img {
97+
max-width: 100% !important;
98+
}
99+
100+
img::selection {
101+
color: #fff;
102+
background: transparent; }
103+
104+
img::-moz-selection {
105+
color: #fff;
106+
background: transparent; }
107+
108+
@media only screen and (min-width: 992px) {
109+
#logo { z-index: 10;
110+
position: absolute !important;
111+
left: 1px !important;
112+
top: 1px !important;
113+
padding-top:10px;
114+
padding-left:5px;}
115+
}
116+
117+
.dropdown-item {
118+
cursor: pointer !important;
119+
padding: 20px;
120+
}
121+
122+
.dropdown > .btn {
123+
color: white;
124+
}
125+
126+
.btn-primary {
127+
background-color: #500e3d;
128+
border-color: #500e3d; }
129+
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
130+
color: #000;
131+
background-color: #951169 !important;
132+
border-color: #951169 !important; }
133+
134+
.btn-lg {
135+
font-size: 16px;
136+
padding: 25px 35px; }
137+
138+
139+
.btn {
140+
font-size: 14px;
141+
font-weight: 800;
142+
padding: 15px 25px;
143+
letter-spacing: 1px;
144+
text-transform: uppercase;
145+
border-radius: 0;
146+
font-family: 'Source Sans Pro', sans-serif !important; }
147+
148+
.description {
149+
margin-top:20px;
150+
padding:20px;
151+
background-color: white;
152+
border-color: #500e3d;
153+
border-radius:10px;
154+
background-color: #F7F7F7;
155+
}
156+
157+
.link {
158+
text-decoration: none !important;
159+
color: #333;
160+
}

0 commit comments

Comments
 (0)