- );
+ )
}
}
-
-export default Events;
+export default Events
diff --git a/src/landingpage/Timeline.js b/src/landingpage/Timeline.js
index a9fb52f..9abd494 100644
--- a/src/landingpage/Timeline.js
+++ b/src/landingpage/Timeline.js
@@ -1,83 +1,89 @@
-import React, { Component } from 'react';
-
+import React, { Component } from "react"
class Timeline extends Component {
- constructor(props) {
- super(props);
- this.state = { schedule: [] };
- }
+ constructor(props) {
+ super(props)
+ this.state = { schedule: [] }
+ }
- get_title(summary) {
- summary = summary.toLowerCase();
- if (summary.includes("freeze"))
- return "At the milestone freeze, pushes from the updates-testing to the stable repository are suspended until the release candidate is accepted."
- if (summary === "rawhide")
- return "Next Fedora release hasn't been branched yet from rolling release branch."
- if (summary.includes("branch"))
- return "Next version of Fedora that was 'branched' from the rolling Rawhide tree and in the future will become the next stable Fedora release."
- if (summary.includes("release"))
- return "Release candidate was accepted (violating no milestone criteria) and was released."
- }
+ get_title(summary) {
+ summary = summary.toLowerCase()
+ if (summary.includes("freeze"))
+ return "At the milestone freeze, pushes from the updates-testing to the stable repository are suspended until the release candidate is accepted."
+ if (summary === "rawhide")
+ return "Next Fedora release hasn't been branched yet from rolling release branch."
+ if (summary.includes("branch"))
+ return "Next version of Fedora that was 'branched' from the rolling Rawhide tree and in the future will become the next stable Fedora release."
+ if (summary.includes("release"))
+ return "Release candidate was accepted (violating no milestone criteria) and was released."
+ }
- render() {
- const line = this.props.data.map(milestone => {
- return (
-
- Before a new version of a package is pushed to the Fedora's Updates repository, it needs to be tested and proved functional.{' '}
-
- The updates are kept in Bodhi, which acts as a gatekeeper between new package releases and the stable repositories.{' '}
- Users (or automated systems) can then provide feedback in form of positive/negative Karma, marking the update as working (or not) within the scope of their expectations.{' '}
- An update can (and usually does) consist of several packages (rpms), that are going through the acceptance process together.
-
-
Sure, let me do it!
-
-
- Fedora Accounts System (FAS) account is required.{' '}
-
-
- Choose an update to test{' '}
-
- Have a look at the available packages in updates-testing repo, by running dnf --enablerepo=updates-testing list --refresh --upgrades and choose a package you know.
-
-
-
- Install the package sudo dnf --enablerepo=updates-testing update PACKAGE_NAME, and test whether it works, as you would expect.
- Note: Other packages from updates-testing repo may be installed as dependencies (shown during the installation process). Try to test those too, if possible.{' '}
-
- Sometimes, the update associated with the package you just installed fixes some specific bugs, or has testcases associated with it.
- Run fedora-easy-karma --fas-username=FAS_USERNAME, and look for Bugs, Test Cases, and/or Notes sections in the detailed output.{' '}
-
- We already mentioned Bodhi, several times. Instead of using the fedora-easy-karma interface for submitting Karma and/or learning about the Update, you can visit Bodhi directly.
- fedora-easy-karma shows the URL of the relevant update near the bottom of the text output - look for URL like https://bodhi.fedoraproject.org/updates/FEDORA-2019-00870e8bfc.
- You can have a look at other people's comments, the afore-mentioned Bugs or Test Cases, and even submit the Karma directly. Just use your FAS credentials to log-in.
-
+ render() {
+ if (this.props.data === undefined) return null
+ else
+ return (
+
+
What is Karma
+ Before a new version of a package is pushed to the Fedora's Updates repository, it
+ needs to be tested and proved functional.{" "}
+
+ The updates are kept in{" "}
+
+ Bodhi
+
+ , which acts as a gatekeeper between new package releases and the stable repositories.{" "}
+ Users (or automated systems) can then provide feedback in form of positive/negative
+ Karma, marking the update as working (or not) within the scope of their expectations.{" "}
+ An update can (and usually does) consist of several packages (rpms), that are going
+ through the acceptance process together.
+
+
Sure, let me do it!
+
+
+ Fedora Accounts System (FAS) account is required.{" "}
+
+
+ Choose an update to test{" "}
+
+ Have a look at the available packages in updates-testing repo, by
+ running dnf --enablerepo=updates-testing list --refresh --upgrades and
+ choose a package you know.
+
+
+
+ Install the package{" "}
+ sudo dnf --enablerepo=updates-testing update PACKAGE_NAME, and test
+ whether it works, as you would expect.
+
+ Note: Other packages from updates-testing repo may be
+ installed as dependencies (shown during the installation process). Try to test those
+ too, if possible.{" "}
+
+ Sometimes, the update associated with the package you just installed fixes some
+ specific bugs, or has testcases associated with it.
+
+ Run fedora-easy-karma --fas-username=FAS_USERNAME, and look for{" "}
+ Bugs, Test Cases, and/or Notes sections in
+ the detailed output.{" "}
+
+ We already mentioned Bodhi, several times. Instead of using the{" "}
+ fedora-easy-karma interface for submitting Karma and/or learning
+ about the Update, you can visit Bodhi directly.
+
+ fedora-easy-karma shows the URL of the relevant update near the
+ bottom of the text output - look for URL like{" "}
+ https://bodhi.fedoraproject.org/updates/FEDORA-2019-00870e8bfc.
+
+ You can have a look at other people's comments, the afore-mentioned Bugs or Test
+ Cases, and even submit the Karma directly. Just use your FAS credentials to
+ log-in.
-
-
- Run fedora-easy-karma --fas-username=FAS_USERNAME and report what you found out.{' '}
-
- It identifies the packages installed from the updates-testing repository, and matches them to the updates in Bodhi.
- You are then presented with the relevant updates one-by-one, to submit Karma and a comment.{' '}
-
-
-
- Enter 1 to mark positive karma (the update works just fine, as far as you can tell), or -1{' '}
- to mark the package as broken.
- Not sure you can judge the package's state? Have a look at the Update Feedback Guidelines
- Still not sure? Just press Enter to skip it.
-
-
- Add a comment - even if it works, try to describe what you tested. It can be as easy as I tried openning and editing a document, and it worked. when you test a text-editor, or I opened a couple of tabs, and browsed random pages. for a web-browser.
- Absolutely make sure to provide reasonable amount of detail, when submitting negative karma - ideally, you should also create a bugreport, and reference it in the comment.
-
-
-
+
+
+
+ Run fedora-easy-karma --fas-username=FAS_USERNAME and report what you
+ found out.{" "}
+
+ It identifies the packages installed from the updates-testing{" "}
+ repository, and matches them to the updates in Bodhi.
+
+ You are then presented with the relevant updates one-by-one, to submit Karma and a
+ comment.{" "}
+
+
+
+ Enter 1 to mark positive karma (the update works just fine, as
+ far as you can tell), or -1 to mark the package as broken.{" "}
+
+ Not sure you can judge the package's state? Have a look at the{" "}
+
+ Update Feedback Guidelines
+
+
+ Still not sure? Just press Enter to skip it.
+
+
+ Add a comment - even if it works, try to describe what you tested. It can be
+ as easy as{" "}
+ I tried openning and editing a document, and it worked. when you
+ test a text-editor, or{" "}
+ I opened a couple of tabs, and browsed random pages. for a
+ web-browser.
+
+ Absolutely make sure to provide reasonable amount of detail, when submitting
+ negative karma - ideally, you should also create a bugreport, and reference
+ it in the comment.
+
+
-
-
Restore the stable-packages on your system by running sudo dnf distro-sync
-
-
-
- )
- }
+
+
+
+ Restore the stable-packages on your system by running{" "}
+ sudo dnf distro-sync
+
+
+
+ )
+ }
}
diff --git a/src/wizard/FedoraManualTesting.js b/src/wizard/FedoraManualTesting.js
index adffcc0..21fbc21 100644
--- a/src/wizard/FedoraManualTesting.js
+++ b/src/wizard/FedoraManualTesting.js
@@ -1,262 +1,409 @@
-import React, { Component } from 'react';
-import { Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';
-import { CollapsableCard, CollapsableBadge } from './components'
+import React, { Component } from "react"
+import { Modal, ModalHeader, ModalBody, ModalFooter } from "reactstrap"
+import { CollapsableCard, CollapsableBadge } from "./components"
export default class FedoraManualTesting extends Component {
- render() {
- let sections = Object.keys(this.props.data).map(k => ());
- return(
-
- var l1 = ;
- switch (this.props.title) {
- case "Installation":
- l1 = (
The Installation testcases generally deal with a part of the installation procedure.
- You will certainly need an installation ISO, and either a Virtual or Bare-metal machine to run the test.
- Note: some (not that many, though) of these testcases require Bare-metal machine. Be sure to read the Description of the testcase carefully.
-
);
- break;
- case "Desktop":
- l1 = (
The Desktop testcases cover basic functionality of the desktop environment.
- You can either install Fedora onto clean Virtual or Bare-metal machine, or use a Live image instead.
-
);
- break;
- case "Base":
- l1 = (
The Base testcases cover the system's basic functionality just after a clean installation.
- Most times, you will be asked to perform a clean Fedora installation. You can use either Virtual or Bare-metal machine.
- Pro tip: using a snapshot of cleanly installed Virtual machine is just fine. No need to reinstall for every testcase.
-
);
- break;
- case "Server":
- l1 = (
The Server testcases usually require multiple machines to test the server-client behaviour, and might feel a bit advanced.
-
);
- break;
- case "Cloud":
- l1 = (
Even thought the Cloud testcases are best done in the specific environments like EC2 or Openstack, you can also perform{' '}
- them locally using Testcloud.
- Have a look at the Cloud provider setup guides for more details.
-
+ The Installation testcases generally deal with a part of the
+ installation procedure.
+
+ You will certainly need an installation ISO, and either a Virtual or Bare-metal machine
+ to run the test.
+
+ Note: some (not that many, though) of these testcases require Bare-metal
+ machine. Be sure to read the Description of the testcase carefully.
+
+ )
+ break
+ case "Desktop":
+ l1 = (
+
+ The Desktop testcases cover basic functionality of the desktop
+ environment.
+
+ You can either install Fedora onto clean Virtual or Bare-metal machine, or use a Live
+ image instead.
+
+ )
+ break
+ case "Base":
+ l1 = (
+
+ The Base testcases cover the system's basic functionality just
+ after a clean installation.
+
+ Most times, you will be asked to perform a clean Fedora installation. You can use
+ either Virtual or Bare-metal machine.
+
+ Pro tip: using a snapshot of cleanly installed Virtual machine is just fine. No
+ need to reinstall for every testcase.
+
+ )
+ break
+ case "Server":
+ l1 = (
+
+ The Server testcases usually require multiple machines to test the
+ server-client behaviour, and might feel a bit advanced.
+
+ )
+ break
+ case "Cloud":
+ l1 = (
+
+ Even thought the Cloud testcases are best done in the specific
+ environments like EC2 or Openstack, you can also perform them locally using Testcloud.
+
+ Have a look at the{" "}
+
+ Cloud provider setup
+ {" "}
+ guides for more details.
+
- Identify the testcase and `environment` in our Tescase matrix{' '}
-
-
-
- Have a look at the matrix. The rows are the testcases, and the columns are the environments. Most of the time, these are {environment_examples} for the {testtype} testcases,{' '}
- but you can also encouter a generic Result column, which usually means you can use any media/architecture available.
-
-
- For this particular testcase, {extra_data.envs.join(', ')} {extra_data.envs.length > 1 ? 'environments are' : 'environment is'} missing results.
-
- Read the Testcase briefly, just to have a general idea of what you will be doing.{' '}
-
- The testcases are generally split into four sections:
-
-
Description should give you a general idea of what is being tested
-
Setup describes the steps to take before you begin working on the testcase
-
How to test contains the individual steps to take in order to perform the testcase
-
Expected results describe what you should check while testing in order to decide whether it Passed of Failed
-
-
-
+ return (
+
+
+
+ Identify the testcase and `environment` in our{" "}
+
+ Tescase matrix
+ {" "}
+
+
+
+ Have a look at the matrix. The rows are the testcases, and the columns are the
+ environments. Most of the time, these are {environment_examples} for the{" "}
+ {testtype} testcases, but you can also encouter a generic Result{" "}
+ column, which usually means you can use any media/architecture available.
+
- Based on the enviromnent, select and download and appropriate ISO here.{' '}
-
-
-
Most of the time Workstation Live, or Server DVD are fine, but sometimes there are specific products (e.g. Xfce) to be tested
-
- Make sure to read about identifying the environment above.{' '}
-
+
+ Read the{" "}
+
+ Testcase
+ {" "}
+ briefly, just to have a general idea of what you will be doing.{" "}
+
+ The testcases are generally split into four sections:
- Have a look at the matrix. The rows are the testcases, and the columns are the environments. Most of the time, these are {environment_examples} for the {testtype} testcases,{' '}
- but you can also encouter a generic Result column, which usually means you can use any media/architecture available.
+ Description should give you a general idea of what is being
+ tested
+
+
+ Setup describes the steps to take before you begin working on
+ the testcase
+
+
+ How to test contains the individual steps to take in order to
+ perform the testcase
- For this particular testcase, {extra_data.envs.join(', ')} {extra_data.envs.length > 1 ? 'environments are' : 'environment is'} missing results.
+ Expected results describe what you should check while testing in
+ order to decide whether it Passed of Failed
-
-
-
-
-
+
+
+
+ Based on the enviromnent, select and download and appropriate ISO{" "}
+
+ here
+
+ .{" "}
+
+
+
+ Most of the time Workstation Live, or Server DVD are fine, but sometimes there
+ are specific products (e.g. Xfce) to be tested
+
+
+ Make sure to read about identifying the environment above.{" "}
+
+
+
+ Have a look at the matrix. The rows are the testcases, and the columns are
+ the environments. Most of the time, these are {environment_examples} for
+ the {testtype} testcases, but you can also encouter a generic{" "}
+ Result column, which usually means you can use any
+ media/architecture available.
+
- Study the Testcase thoroughly, to be sure you know what to do.{' '}
-
-
-
- The testcase structure is not making sense?{' '}
-
- The testcases are generally split into four sections:
-
-
Description should give you a general idea of what is being tested
-
Setup describes the steps to take before you begin working on the testcase
-
How to test contains the individual steps to take in order to perform the testcase
-
Expected results describe what you should check while testing in order to decide whether it Passed of Failed
-
-
-
-
- Maybe you are stuck, or just do not understand something? Feel free to ask on our IRC channel #fedora-qa at freenode.net{' '}
-
- If you are not that familiar with IRC, you can use the web-interface{' '}
- just enter a Nickname of your choice, #fedora-qa (including the hash sign) in the Channels field, and click Connect.
-
-
-
-
-
+
+ Study the{" "}
+
+ Testcase
+ {" "}
+ thoroughly, to be sure you know what to do.{" "}
+
+
+
+ The testcase structure is not making sense?{" "}
+
+ The testcases are generally split into four sections:
+
+
+ Description should give you a general idea of what is
+ being tested
+
+
+ Setup describes the steps to take before you begin working
+ on the testcase
+
+
+ How to test contains the individual steps to take in order
+ to perform the testcase
+
+
+ Expected results describe what you should check while
+ testing in order to decide whether it Passed of Failed
+
+
+
+
+
+ Maybe you are stuck, or just do not understand something? Feel free to ask on our
+ IRC channel #fedora-qa at freenode.net{" "}
+
+ If you are not that familiar with IRC, you can use the{" "}
+
+ web-interface
+ {" "}
+ just enter a Nickname of your choice, #fedora-qa (including the hash sign) in
+ the Channels field, and click Connect.
+
+
+
+
+
-
- Get your hands dirty, and test the hell out of it!
-
-
-
- Great!
- Either use relval report-results on command line (make sure to install the relval package first),
- or modify the matrix directly by clicking on the Edit link next to the Matrice's header,
- and put {{result|pass|YOUR_NAME_HERE|}} in the appropriate spot.
-
-
-
- Awesome! Ideally read up on https://fedoraproject.org/wiki/How_to_file_a_bug_report
- If you don't feel like reading a wall of text, at least pot together a small document containing:
-
-
Brief description of what went wrong (e.g. "QA:Testcase_dualboot_with_windows - Bootloader does not show the Windows option")
-
The name of the ISO image you used (e.g. "Fedora-Server-netinst-i386-Rawhide-20181227.n.0.iso")
-
Note what you did, as precisely as possible, in a step-by-step fashion. Even details like "Chose Polish as the languae for the installation process" can matter.
-
Try to reproduce the same state again based on the steps above (you can also experiment a bit, and try to come up with just the critical steps)
-
- Share your notes on the internet (you can use fpaste), and ask for help with filing the bug report on our IRC channel #fedora-qa at freenode.net{' '}
-
- If you are not that familiar with IRC, you can use the web-interface[link] just enter a Nickname of your choice, #fedora-qa (including the hash sign) in the Channels field, and click Connect.
+
Get your hands dirty, and test the hell out of it!
+
+
+ Great! Either use relval report-results on command line (make sure to
+ install the relval package first), or modify the{" "}
+
+ matrix
+ {" "}
+ directly by clicking on the Edit link next to the Matrice's header, and
+ put {{result|pass|YOUR_NAME_HERE|}} in the
+ appropriate spot.
-
-
- Once you get the Bug reported, make sure to also submit the result into the testing matrix.
- Either use relval report-results on command line (make sure to install the relval package first),
- or modify the matrix directly by clicking on the Edit link next to the Matrice's header,
- and put {{result|fail|YOUR_NAME_HERE|BUG_NUMBER|}} in the appropriate spot.
-
-
-
-
- )
- }
+
+ Awesome! Ideally read up on https://fedoraproject.org/wiki/How_to_file_a_bug_report
+
+ If you don't feel like reading a wall of text, at least pot together a small document
+ containing:
+
+
+ Brief description of what went wrong (e.g. "QA:Testcase_dualboot_with_windows -
+ Bootloader does not show the Windows option")
+
+
+ The name of the ISO image you used (e.g.
+ "Fedora-Server-netinst-i386-Rawhide-20181227.n.0.iso")
+
+
+ Note what you did, as precisely as possible, in a step-by-step fashion. Even
+ details like "Chose Polish as the languae for the installation process" can
+ matter.
+
+
+ Try to reproduce the same state again based on the steps above (you can also
+ experiment a bit, and try to come up with just the critical steps)
+
+
+ Share your notes on the internet (you can use fpaste), and ask for help with
+ filing the bug report on our IRC channel #fedora-qa at freenode.net{" "}
+
+ If you are not that familiar with IRC, you can use the web-interface[link] just
+ enter a Nickname of your choice, #fedora-qa (including the hash sign) in the
+ Channels field, and click Connect.
+
+
+
+ Once you get the Bug reported, make sure to also submit the result into the testing
+ matrix. Either use relval report-results on command line (make sure to
+ install the relval package first), or modify the{" "}
+
+ matrix
+ {" "}
+ directly by clicking on the Edit link next to the Matrice's header, and
+ put {{result|fail|YOUR_NAME_HERE|BUG_NUMBER|}} in
+ the appropriate spot.
+
+
+
+
+ )
+ }
}
-
class ModalInfo extends Component {
- constructor(props) {
- super(props);
- this.state = {
- modal: false
- };
-
- this.toggle = this.toggle.bind(this);
+ constructor(props) {
+ super(props)
+ this.state = {
+ modal: false,
}
- toggle(e) {
- this.setState({
- modal: !this.state.modal
- });
- e.preventDefault();
- }
+ this.toggle = this.toggle.bind(this)
+ }
- render() {
- const project = this.props.buttonLabel.split(":")[0]
- const ticket = this.props.buttonLabel.split(":")[1] //strip whitespace?
+ toggle(e) {
+ this.setState({
+ modal: !this.state.modal,
+ })
+ e.preventDefault()
+ }
- return (
-