Skip to content

Commit fa70c0c

Browse files
authored
Merge pull request #313 from sboldyreva/split
Separate ELS for Runtimes
2 parents 0b50136 + e6b7900 commit fa70c0c

File tree

18 files changed

+419
-77
lines changed

18 files changed

+419
-77
lines changed

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,8 @@ yarn docs:dev
4343
```
4444
docs/
4545
├── .vuepress/ # VuePress config and components
46-
├── els-for-os/ # Extended Lifecycle Support for OS
46+
├── els-for-os/ # Endless Lifecycle Support for OS
47+
├── els-for-runtimes/ # ELS for Runtimes
4748
├── els-for-runtimes-and-libraries/ # ELS for languages/frameworks
4849
├── els-for-applications/ # ELS for applications
4950
├── enterprise-support-for-almalinux/

docs/.vuepress/client.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import CodeTabs from "./components/CodeTabs.vue";
1717
import CodeWithCopy from "./components/CodeWithCopy.vue";
1818
import TableTabs from "./components/TableTabs.vue";
1919
import ELSTechnology from "./components/ELSTechnology.vue";
20+
import ELSRTechnology from "./components/ELSRTechnology.vue";
2021

2122
import ResolvedCveTable from './components/ResolvedCveTable.vue'
2223

@@ -31,6 +32,7 @@ export default defineClientConfig({
3132
app.component("ResolvedCveTable", ResolvedCveTable);
3233
app.component("TableTabs", TableTabs);
3334
app.component("ELSTechnology", ELSTechnology);
35+
app.component("ELSRTechnology", ELSRTechnology);
3436
},
3537
layouts: {
3638
Layout,
Lines changed: 312 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,312 @@
1+
<template>
2+
<div class="heading text-center">
3+
<h4>Supported Runtimes for ELS</h4>
4+
</div>
5+
6+
<div class="sp-sorting runtimes-sorting">
7+
<div class="sp-sort-head">
8+
<ul>
9+
<li class="echo">Runtimes</li>
10+
<li class="echo">Versions</li>
11+
</ul>
12+
</div>
13+
14+
<div class="runtimes-sorting-d">
15+
<div v-for="(runtime, index) in runtimes" :key="index" class="item">
16+
<div class="item-l">
17+
<a v-if="runtime.link" :href="runtime.link">
18+
<img :src="runtime.icon" :alt="runtime.name" />
19+
{{ runtime.name }}
20+
</a>
21+
<template v-else>
22+
<img :src="runtime.icon" :alt="runtime.name" />
23+
{{ runtime.name }}
24+
</template>
25+
</div>
26+
<div class="item-r">
27+
<span>{{ runtime.versions }}</span>
28+
<sup v-if="runtime.footnoteSymbol" class="c-red">{{ runtime.footnoteSymbol }}</sup>
29+
<span v-if="runtime.footnote" class="footnote">
30+
<sup>{{ runtime.footnoteSymbol }}</sup> {{ runtime.footnote }}
31+
</span>
32+
</div>
33+
</div>
34+
</div>
35+
</div>
36+
37+
<div class="txc-logos-list">
38+
<div class="heading text-center">
39+
<h4>We Keep Your Runtimes Secure on Enterprise Linux, <br>Windows, and Debian-Based Operating Systems</h4>
40+
</div>
41+
42+
<div class="list">
43+
<ul>
44+
<li v-for="(os, index) in operatingSystems" :key="index">
45+
<a v-if="os.link" :href="os.link">
46+
<span class="thumb"><img :src="os.icon" :alt="os.name" /></span>
47+
<span class="name" v-html="os.name"></span>
48+
</a>
49+
<template v-else>
50+
<span class="thumb"><img :src="os.icon" :alt="os.name" /></span>
51+
<span class="name" v-html="os.name"></span>
52+
</template>
53+
</li>
54+
</ul>
55+
</div>
56+
</div>
57+
58+
<p>If something's missing or you have questions, <a href="https://tuxcare.com/support-portal/">contact support</a>.<br>Support for other Linux distros is available upon request</p>
59+
</template>
60+
61+
<script setup>
62+
const runtimes = [
63+
{
64+
name: "OpenJDK",
65+
versions: "7 | 8 | 11 | 17",
66+
link: "./openjdk/",
67+
icon: "/images/java.webp",
68+
},
69+
{
70+
name: "PHP",
71+
versions: "5.2 | 5.3 | 5.4 | 5.5 | 5.6 | 7.0 | 7.1 | 7.2 | 7.3 | 7.4 | 8.0 | 8.1 | 8.2 ",
72+
link: "./php/",
73+
icon: "/images/php.webp",
74+
},
75+
{
76+
name: "Python",
77+
versions: "2.7 | 3.6 ",
78+
link: "./python/",
79+
icon: "/images/python.webp",
80+
},
81+
{
82+
name: ".NET",
83+
versions: "6",
84+
link: "./dotnet/",
85+
icon: "/images/csharp.webp",
86+
},
87+
{
88+
name: "Node.js",
89+
versions: "12 | 14 | 16 | 18 | 20",
90+
link: "./nodejs/",
91+
icon: "/images/javascript.webp",
92+
},
93+
];
94+
95+
const operatingSystems = [
96+
{
97+
name: "Red Hat<br>Enterprise Linux",
98+
icon: "/images/redhat.webp",
99+
},
100+
{
101+
name: "CentOS",
102+
icon: "/images/centos.webp",
103+
},
104+
{
105+
name: "AlmaLinux",
106+
icon: "/images/almalinux.webp",
107+
},
108+
{
109+
name: "Rocky Linux",
110+
icon: "/images/rocky.webp",
111+
},
112+
{
113+
name: "Oracle Linux",
114+
icon: "/images/Oracle-Linux.webp",
115+
},
116+
{
117+
name: "Debian",
118+
icon: "/images/debian.webp",
119+
},
120+
{
121+
name: "Ubuntu",
122+
icon: "/images/Ubuntu.webp",
123+
},
124+
{
125+
name: "Windows",
126+
icon: "/images/windows.webp",
127+
},
128+
];
129+
</script>
130+
131+
<style scoped>
132+
.heading.text-center {
133+
text-align: center;
134+
margin-bottom: 1.5rem;
135+
}
136+
137+
.sp-sorting.runtimes-sorting {
138+
border-radius: 23px;
139+
border: 3px solid #D9EDFF;
140+
box-shadow: 0px 4px 58px 0px rgba(53, 156, 243, 0.15);
141+
padding: 1.5rem;
142+
background-color: #fff;
143+
}
144+
145+
.sp-sort-head ul {
146+
display: flex;
147+
list-style: none;
148+
padding: 0.5rem;
149+
margin: 0 0 1rem 0;
150+
font-weight: bold;
151+
font-size: 1rem;
152+
border-bottom: 2px solid #F48243;
153+
}
154+
155+
.sp-sort-head li.echo {
156+
flex: 1;
157+
text-align: left;
158+
padding-left: 0.5rem;
159+
}
160+
161+
.sp-sort-head li.echo:first-child {
162+
flex: 0 0 40%;
163+
}
164+
165+
.sp-sort-head li.echo:last-child {
166+
flex: 1;
167+
}
168+
169+
.runtimes-sorting-d {
170+
display: flex;
171+
flex-direction: column;
172+
gap: 0;
173+
}
174+
175+
.runtimes-sorting-d .item {
176+
display: flex;
177+
padding: 0.75rem 0.5rem;
178+
border-bottom: 1px solid #eee;
179+
align-items: center;
180+
}
181+
182+
.runtimes-sorting-d .item:last-child {
183+
border-bottom: none;
184+
}
185+
186+
.runtimes-sorting-d .item-l {
187+
flex: 0 0 40%;
188+
display: flex;
189+
align-items: center;
190+
font-weight: 500;
191+
}
192+
193+
.runtimes-sorting-d .item-l img {
194+
height: 24px;
195+
width: 24px;
196+
margin-right: 0.75rem;
197+
object-fit: contain;
198+
}
199+
200+
.runtimes-sorting-d .item-l a {
201+
display: flex;
202+
align-items: center;
203+
color: #007bff;
204+
text-decoration: none;
205+
}
206+
207+
.runtimes-sorting-d .item-l a:hover {
208+
text-decoration: underline;
209+
}
210+
211+
.runtimes-sorting-d .item-r {
212+
flex: 1;
213+
display: flex;
214+
align-items: center;
215+
flex-wrap: wrap;
216+
gap: 0.25rem;
217+
}
218+
219+
.runtimes-sorting-d .item-r span {
220+
line-height: 1.4;
221+
}
222+
223+
.c-red {
224+
color: #dc3545;
225+
margin-left: 0.25rem;
226+
}
227+
228+
.footnote {
229+
display: block;
230+
width: 100%;
231+
font-size: 0.85rem;
232+
color: #666;
233+
margin-top: 0.25rem;
234+
font-style: italic;
235+
}
236+
237+
.txc-logos-list {
238+
margin-top: 3rem;
239+
}
240+
241+
.txc-logos-list .list ul {
242+
display: grid;
243+
grid-template-columns: repeat(4, minmax(150px, 200px));
244+
gap: 1.5rem;
245+
list-style: none;
246+
padding: 0;
247+
margin: 0;
248+
justify-content: center;
249+
}
250+
251+
.txc-logos-list .list li {
252+
display: flex;
253+
justify-content: center;
254+
align-items: center;
255+
}
256+
257+
.txc-logos-list .list li a {
258+
display: flex;
259+
flex-direction: column;
260+
align-items: center;
261+
text-align: center;
262+
text-decoration: none;
263+
color: inherit;
264+
transition: transform 0.2s ease;
265+
}
266+
267+
.txc-logos-list .list li a:hover {
268+
transform: translateY(-5px);
269+
}
270+
271+
.txc-logos-list .thumb {
272+
display: flex;
273+
align-items: center;
274+
justify-content: center;
275+
width: 80px;
276+
height: 80px;
277+
margin-bottom: 0.75rem;
278+
}
279+
280+
.txc-logos-list .thumb img {
281+
max-width: 100%;
282+
max-height: 100%;
283+
object-fit: contain;
284+
}
285+
286+
.txc-logos-list .name {
287+
font-size: 0.95rem;
288+
font-weight: 500;
289+
line-height: 1.3;
290+
color: #333;
291+
}
292+
293+
@media (max-width: 768px) {
294+
.txc-logos-list .list ul {
295+
grid-template-columns: repeat(2, minmax(120px, 150px));
296+
gap: 1rem;
297+
justify-content: center;
298+
}
299+
300+
.txc-logos-list .thumb {
301+
width: 60px;
302+
height: 60px;
303+
}
304+
305+
.heading.heading-with-sub h2 {
306+
font-size: 1.5rem;
307+
}
308+
}
309+
</style>
310+
311+
312+

0 commit comments

Comments
 (0)