From 932836c6f8c0ac7941d2c77bbc7d2fb486560ae0 Mon Sep 17 00:00:00 2001
From: Meher Chinwala
Date: Apr 06 2020 21:26:48 +0000
Subject: [PATCH 1/3] Merge branch 'master' of https://pagure.io/fedora-web/websites into b1
---
diff --git a/sites/static/js/coreos-download.js b/sites/static/js/coreos-download.js
index 91d86ed..e2e4569 100644
--- a/sites/static/js/coreos-download.js
+++ b/sites/static/js/coreos-download.js
@@ -20,6 +20,7 @@ const prettyPlatforms = {
"aliyun": "Alibaba Cloud",
"metal": {
"raw.xz": "Raw",
+ "4k.raw.xz": "Raw (4k Native)",
"iso": "ISO",
"pxe": "PXE",
"installer.iso": "Installer (ISO)",
@@ -33,14 +34,14 @@ const prettyPlatforms = {
// innerText of tab button
const tabInnerText = {
"cloud_launchable": "Cloud Launchable",
- "metal_virt": "Bare Metal & Virtualized",
- "cloud_operator": "For Cloud Operators"
+ "metal_virtualized": "Bare Metal & Virtualized",
+ "cloud_operators": "For Cloud Operators"
}
// frequently used IDs
const IdPool = {
"cloud_launchable": "cloud-launchable",
- "metal_virt": "metal-virt",
- "cloud_operator": "cloud-operator"
+ "metal_virtualized": "metal-virtualized",
+ "cloud_operators": "cloud-operators"
}
function getMember(obj, member) {
return (member in obj) ? obj[member] : null;
@@ -142,6 +143,8 @@ var coreos_download_app = new Vue({
const key = pair[0];
const val = pair[1];
if (val === e.target.innerText) {
+ const downloadPageUrl = window.location.href.match(/^.*\/coreos\/download/)[0];
+ history.pushState(null, null, `${downloadPageUrl}?tab=${key}&stream=${coreos_download_app.stream}`);
const show_id = IdPool[key];
id_list.map(id => document.getElementById(id).hidden = (id !== show_id));
this.shownId = show_id;
@@ -154,7 +157,7 @@ var coreos_download_app = new Vue({
nav_cloud_launchable = h('li', { class: "nav-item col-4" }, [ nav_cloud_launchable_btn ]);
server_icon = h('i', { class: "fas fa-server mr-2" })
- nav_metal_virt_btn = h('button', { class: "nav-link col-12 h-100 overflow-hidden".concat(this.shownId === IdPool.metal_virt ? " active" : ""), attrs: { "data-toggle": "tab" }, on: { click: this.toggleHidden } }, [ server_icon, tabInnerText.metal_virt ]);
+ nav_metal_virt_btn = h('button', { class: "nav-link col-12 h-100 overflow-hidden".concat(this.shownId === IdPool.metal_virtualized ? " active" : ""), attrs: { "data-toggle": "tab" }, on: { click: this.toggleHidden } }, [ server_icon, tabInnerText.metal_virtualized ]);
nav_metal_virt = h('li', { class: "nav-item col-4" }, [ nav_metal_virt_btn ]);
cloud_upload_icon = h('i', { class: "fas fa-cloud-upload-alt mr-2" })
@@ -166,6 +169,7 @@ var coreos_download_app = new Vue({
},
// Add dropdown options of streams
getStreamName: function(h) {
+ const self = this;
if (this.streamData === null) return;
option_stable = h('option', { attrs: { value: "stable", selected: this.stream === "stable" ? "selected" : null }}, "stable");
option_testing = h('option', { attrs: { value: "testing", selected: this.stream === "testing" ? "selected" : null }}, "testing");
@@ -173,7 +177,10 @@ var coreos_download_app = new Vue({
class: "mx-1",
on: {
change: function(e) {
+ const downloadPageUrl = window.location.href.match(/^.*\/coreos\/download/)[0];
+ const currentShownKey = Object.keys(IdPool).find(key => IdPool[key] === self.shownId);
coreos_download_app.stream = e.target.value;
+ history.pushState(null, null, `${downloadPageUrl}?tab=${currentShownKey}&stream=${coreos_download_app.stream}`);
}
}
}, [
@@ -273,8 +280,18 @@ var coreos_download_app = new Vue({
const release = getMember(artifacts[platform], "release");
const formats = getMember(artifacts[platform], "formats");
if (formats) {
+ prettyFormats = [];
+ // in the case where each individual format has a separate pretty
+ // name, we want the artifacts listed in alphabetical order
for (var format in formats) {
- const prettyPlatform = getPrettyPlatform(platform, format);
+ pretty = getPrettyPlatform(getPrettyPlatform(platform, format));
+ prettyFormats.push({format: format, pretty: pretty});
+ }
+ prettyFormats.sort(function(a, b) { return a.pretty.localeCompare(b.pretty); });
+ for (i = 0; i < prettyFormats.length; i++) {
+ const format = prettyFormats[i].format;
+ const prettyPlatform = prettyFormats[i].pretty;
+
// XXX: the conditions to display the extension here are quickly
// hacked in; if adding any further conditions this should be
// handled elsewhere in a better organized structure.
@@ -332,6 +349,47 @@ var coreos_download_app = new Vue({
}
},
render: function(h) {
+<<<<<<< HEAD
+=======
+ const downloadPageUrl = window.location.href.match(/^.*\/coreos\/download/)[0];
+ searchParams = new URLSearchParams(window.location.search);
+ // switch to specified tab if `tab` parameter is set
+ if (searchParams.has('tab')) {
+ switch(searchParams.get('tab')) {
+ case 'cloud_launchable':
+ this.shownId = IdPool.cloud_launchable;
+ break;
+ case 'metal_virtualized':
+ this.shownId = IdPool.metal_virtualized;
+ break;
+ case 'cloud_operators':
+ this.shownId = IdPool.cloud_operators;
+ break;
+ default:
+ this.shownId = IdPool.cloud_launchable;
+ }
+ } else {
+ searchParams.set('tab', 'cloud_launchable');
+ }
+ // switch to specified stream if `stream` parameter is set
+ if (searchParams.has('stream')) {
+ switch(searchParams.get('stream')) {
+ case 'stable':
+ this.stream = "stable";
+ break;
+ case 'testing':
+ this.stream = "testing";
+ break;
+ default:
+ this.stream = "stable";
+ }
+ } else {
+ searchParams.set('stream', 'stable');
+ }
+ // Update the url with the parameters
+ history.pushState(null, null, `${downloadPageUrl}?${searchParams.toString()}`);
+
+>>>>>>> 2cf18e6a4af4314c98b53393103fea7604ddefd9
var signature_sha256_verification_modal = this.getSignatureAndShaModal(h);
var stream_select_container = h('div', { class: "pb-0 pt-3 mb-3" }, [ h('div', { class: "container" }, [ this.getStreamName(h), this.getNavbar(h) ]) ]);
if (this.loading) {
@@ -546,8 +604,13 @@ var coreos_download_app = new Vue({
let virtualized_container = h('div', { class: "col-6" }, [ virtualizedTitle, verifyBlurb, virtualized ]);
let cloud_launchable_container = h('div', { class: "col-12 py-2 my-2", attrs: { id: IdPool.cloud_launchable, hidden: this.shownId !== IdPool.cloud_launchable } }, [ cloudLaunchableTitle, cloudLaunchable ]);
+<<<<<<< HEAD
let metal_virt_container = h('div', { class: "row col-12 py-2 my-2", attrs: { id: IdPool.metal_virt, hidden: this.shownId !== IdPool.metal_virt } }, [ bare_metal_container, virtualized_container ]);
let cloud_operators_container = h('div', { class: "col-12 py-2 my-2", attrs: { id: IdPool.cloud_operator, hidden: this.shownId !== IdPool.cloud_operator } }, [ cloudTitle, verifyBlurb, cloud ]);
+=======
+ let metal_virt_container = h('div', { class: "row col-12 py-2 my-2", attrs: { id: IdPool.metal_virtualized, hidden: this.shownId !== IdPool.metal_virtualized } }, [ bare_metal_container, virtualized_container ]);
+ let cloud_operators_container = h('div', { class: "col-12 py-2 my-2", attrs: { id: IdPool.cloud_operators, hidden: this.shownId !== IdPool.cloud_operators } }, [ cloudTitle, verifyBlurb, cloud ]);
+>>>>>>> 2cf18e6a4af4314c98b53393103fea7604ddefd9
return h('div', {}, [
signature_sha256_verification_modal,
From c471de4b0c27c4d5ed58de9e7184817ef15be878 Mon Sep 17 00:00:00 2001
From: Meher Chinwala
Date: Apr 07 2020 17:31:32 +0000
Subject: [PATCH 2/3] Added links, updated release.yaml
---
diff --git a/sites/getfedora.org/release.yaml b/sites/getfedora.org/release.yaml
index def8a24..cdd1631 100644
--- a/sites/getfedora.org/release.yaml
+++ b/sites/getfedora.org/release.yaml
@@ -18,6 +18,7 @@ ga:
live_i386: false
netinst_x86_64: false
netinst_i386: false
+ live_aarch64: false
server:
pretty_name: Fedora Server
@@ -52,6 +53,7 @@ beta:
download_override:
live_x86_64: default
netinst_x86_64: default
+ live_aarch64: https://dl.fedoraproject.org/pub/fedora-secondary/releases/test/32_Beta/Workstation/aarch64/images/Fedora-Workstation-32_Beta-1.2.aarch64.raw.xz
server:
pretty_name: Fedora Server Beta
diff --git a/sites/getfedora.org/site/workstation/download/index.html b/sites/getfedora.org/site/workstation/download/index.html
index 10542da..f12117e 100644
--- a/sites/getfedora.org/site/workstation/download/index.html
+++ b/sites/getfedora.org/site/workstation/download/index.html
@@ -29,19 +29,19 @@
Get started by using Fedora Media Writer, which makes it super easy to give Fedora a try.
{% endtrans %}
-
+
@@ -54,6 +54,7 @@
Not sure how to use this file? Learn here.
{% endtrans %}
+ For x86_64:
{% if releaseinfo.ga.editions.workstation.download_override.live_x86_64 %}
-
@@ -83,6 +84,41 @@
{% endif %}
+
+
+ For ARM® aarch64:
+
+
+ {% if releaseinfo.ga.editions.workstation.download_override.live_aarch64 %}
+ -
+
+ {% trans trimmed n=releaseinfo.ga.editions.workstation.release_number %}
+ Fedora {{n}}: aarch64 raw image
+ {% endtrans %}
+
+
+
+ {% endif %}
+
+ {% if releaseinfo.beta.show and releaseinfo.beta.editions.workstation.download_override.live_aarch64 %}
+ -
+
+ {% trans trimmed n=releaseinfo.beta.editions.workstation.release_number %}
+ Fedora {{n}}: aarch64 raw image
+ {% endtrans %}
+ {% trans trimmed %}Beta!{% endtrans %}
+
+
+
+ {% endif %}
From e70af4758b1f6f1447b27b24e31712a5ccd25bff Mon Sep 17 00:00:00 2001
From: Meher Chinwala
Date: Apr 07 2020 18:05:34 +0000
Subject: [PATCH 3/3] Resolved conflicts for coreos-download.js
---
diff --git a/sites/static/js/coreos-download.js b/sites/static/js/coreos-download.js
index e2e4569..93a5679 100644
--- a/sites/static/js/coreos-download.js
+++ b/sites/static/js/coreos-download.js
@@ -349,47 +349,6 @@ var coreos_download_app = new Vue({
}
},
render: function(h) {
-<<<<<<< HEAD
-=======
- const downloadPageUrl = window.location.href.match(/^.*\/coreos\/download/)[0];
- searchParams = new URLSearchParams(window.location.search);
- // switch to specified tab if `tab` parameter is set
- if (searchParams.has('tab')) {
- switch(searchParams.get('tab')) {
- case 'cloud_launchable':
- this.shownId = IdPool.cloud_launchable;
- break;
- case 'metal_virtualized':
- this.shownId = IdPool.metal_virtualized;
- break;
- case 'cloud_operators':
- this.shownId = IdPool.cloud_operators;
- break;
- default:
- this.shownId = IdPool.cloud_launchable;
- }
- } else {
- searchParams.set('tab', 'cloud_launchable');
- }
- // switch to specified stream if `stream` parameter is set
- if (searchParams.has('stream')) {
- switch(searchParams.get('stream')) {
- case 'stable':
- this.stream = "stable";
- break;
- case 'testing':
- this.stream = "testing";
- break;
- default:
- this.stream = "stable";
- }
- } else {
- searchParams.set('stream', 'stable');
- }
- // Update the url with the parameters
- history.pushState(null, null, `${downloadPageUrl}?${searchParams.toString()}`);
-
->>>>>>> 2cf18e6a4af4314c98b53393103fea7604ddefd9
var signature_sha256_verification_modal = this.getSignatureAndShaModal(h);
var stream_select_container = h('div', { class: "pb-0 pt-3 mb-3" }, [ h('div', { class: "container" }, [ this.getStreamName(h), this.getNavbar(h) ]) ]);
if (this.loading) {
@@ -604,13 +563,8 @@ var coreos_download_app = new Vue({
let virtualized_container = h('div', { class: "col-6" }, [ virtualizedTitle, verifyBlurb, virtualized ]);
let cloud_launchable_container = h('div', { class: "col-12 py-2 my-2", attrs: { id: IdPool.cloud_launchable, hidden: this.shownId !== IdPool.cloud_launchable } }, [ cloudLaunchableTitle, cloudLaunchable ]);
-<<<<<<< HEAD
let metal_virt_container = h('div', { class: "row col-12 py-2 my-2", attrs: { id: IdPool.metal_virt, hidden: this.shownId !== IdPool.metal_virt } }, [ bare_metal_container, virtualized_container ]);
let cloud_operators_container = h('div', { class: "col-12 py-2 my-2", attrs: { id: IdPool.cloud_operator, hidden: this.shownId !== IdPool.cloud_operator } }, [ cloudTitle, verifyBlurb, cloud ]);
-=======
- let metal_virt_container = h('div', { class: "row col-12 py-2 my-2", attrs: { id: IdPool.metal_virtualized, hidden: this.shownId !== IdPool.metal_virtualized } }, [ bare_metal_container, virtualized_container ]);
- let cloud_operators_container = h('div', { class: "col-12 py-2 my-2", attrs: { id: IdPool.cloud_operators, hidden: this.shownId !== IdPool.cloud_operators } }, [ cloudTitle, verifyBlurb, cloud ]);
->>>>>>> 2cf18e6a4af4314c98b53393103fea7604ddefd9
return h('div', {}, [
signature_sha256_verification_modal,