From 65ff50f0a6a848b89bc0b15189e18a4ec80a216c Mon Sep 17 00:00:00 2001 From: [Alisina92] Date: Apr 01 2021 20:15:29 +0000 Subject: Links now are using source Link --- diff --git a/src/landingpage/Minutes.js b/src/landingpage/Minutes.js index 4f88f2b..34c28de 100644 --- a/src/landingpage/Minutes.js +++ b/src/landingpage/Minutes.js @@ -1,28 +1,25 @@ -import React, { Component } from "react" +import React from "react" +import SourceLink from "./SourceLink"; -class Events extends Component { - render() { - return ( +const Events =(props)=>{ + return (

Fedora QA Meeting Minutes

- - Latest minutes from {this.props.data.date} - -
- Visit{" "} - - meetbot - {" "} - to see older. -
+
+

+ Latest minutes from {props.data.date} + +

+

+ Visit meetbot + + to see older. +

- ) + ); } -} + export default Events diff --git a/src/landingpage/SourceLink.js b/src/landingpage/SourceLink.js index 76cfa0b..a05c989 100644 --- a/src/landingpage/SourceLink.js +++ b/src/landingpage/SourceLink.js @@ -1,17 +1,16 @@ -import React, {Component} from 'react' +import React from 'react' -class SourceLink extends Component { - render() { - return ( +const SourceLink =(props)=> { + return ( ) - } + } export default SourceLink diff --git a/src/layout/Footer.js b/src/layout/Footer.js index f6cd591..255f654 100644 --- a/src/layout/Footer.js +++ b/src/layout/Footer.js @@ -1,16 +1,17 @@ -import React, { Component } from "react" +import React from "react" +import SourceLink from "../landingpage/SourceLink"; -class Footer extends Component { - render() { - return ( -
-
- Source on Pagure{" "} - version 0.1.0 -
+const Footer =()=> { + return ( +
+
+ Source + on Pagure{" "} + version 0.1.0
- ) - } +
+ ); + } export default Footer diff --git a/src/wizard/Easyfix.js b/src/wizard/Easyfix.js index ebccbfc..1fb8615 100644 --- a/src/wizard/Easyfix.js +++ b/src/wizard/Easyfix.js @@ -1,6 +1,6 @@ import React, { Component } from "react" import { CollapsableCard } from "./components" - +import SourceLink from "../landingpage/SourceLink" export default class Easyfix extends Component { render() { console.log(this.props.data) @@ -76,9 +76,9 @@ class EasyfixLinksList extends Component { render() { const items = this.props.data.map((action) => (
  • - + {action.name} - +
  • )) diff --git a/src/wizard/FedoraEasyKarma.js b/src/wizard/FedoraEasyKarma.js index d4e6be6..83ab521 100644 --- a/src/wizard/FedoraEasyKarma.js +++ b/src/wizard/FedoraEasyKarma.js @@ -1,25 +1,27 @@ -import React, { Component } from "react" -import { CollapsableBadge } from "./components" - +import React, { Component } from "react"; +import { CollapsableBadge } from "./components"; +import SourceLink from "../landingpage/SourceLink"; export default class FedoraEasyKarmaItemsList extends Component { render() { - if (this.props.data === undefined) return null + 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.{" "} + 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. + +

    + , 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!

      @@ -28,99 +30,117 @@ export default class FedoraEasyKarmaItemsList extends Component {
      • - Visit{" "} - - FAS Sign-up page - {" "} - and create it. +

        + {" "} + Visit{" "} + + FAS Sign-up page and create it. +

        +
      • +
      • + Note the username and password, you will need it later on.
      • -
      • Note the username and password, you will need it later on.
    1. - Make sure your system is up-to-date: sudo dnf update --refresh + Make sure your system is up-to-date:{" "} + sudo dnf update --refresh
    2. - Install fedora-easy-karma tool: sudo dnf install fedora-easy-karma + Install fedora-easy-karma tool:{" "} + sudo dnf install fedora-easy-karma
    3. 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. + 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.
    4. Install the package{" "} - sudo dnf --enablerepo=updates-testing update PACKAGE_NAME, and test - whether it works, as you would expect. + + 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.{" "} + 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. + 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.{" "} + 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. + 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. + 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. + 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.
    5. - Run fedora-easy-karma --fas-username=FAS_USERNAME and report what you - found out.{" "} + 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. + 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.{" "} + You are then presented with the relevant updates one-by-one, to + submit Karma and a comment.{" "}
      1. - 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{" "} - + 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.
      2. - 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. + 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. + 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.
      @@ -132,6 +152,6 @@ export default class FedoraEasyKarmaItemsList extends Component {
    - ) + ); } } diff --git a/src/wizard/FedoraManualTesting.js b/src/wizard/FedoraManualTesting.js index 21fbc21..d409001 100644 --- a/src/wizard/FedoraManualTesting.js +++ b/src/wizard/FedoraManualTesting.js @@ -1,13 +1,17 @@ -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"; +import SourceLink from "../landingpage/SourceLink"; export default class FedoraManualTesting extends Component { render() { let sections = Object.keys(this.props.data).map((k) => ( - - )) - return
    {sections}
    + + )); + return
    {sections}
    ; } } @@ -21,7 +25,7 @@ class FedoraManualTestingItemsListSub2 extends Component { ))} - ) + ); } } @@ -30,218 +34,229 @@ class FedoraManualTestingItemsListSub1 extends Component { var subsections = Object.keys(this.props.data).map((k) => (
  • {k} - +
  • - )) - subsections =
      {subsections}
    + )); + subsections =
      {subsections}
    ; - var l1 =
    + var l1 =
    ; switch (this.props.title) { case "Installation": l1 = (
    - The Installation testcases generally deal with a part of the - installation procedure. + 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. + 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. + Note: some (not that many, though) of these testcases require + Bare-metal machine. Be sure to read the Description of the testcase + carefully.
    - ) - break + ); + break; case "Desktop": l1 = (
    - The Desktop testcases cover basic functionality of the desktop - environment. + 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. + You can either install Fedora onto clean Virtual or Bare-metal + machine, or use a Live image instead.
    - ) - break + ); + break; case "Base": l1 = (
    - The Base testcases cover the system's basic functionality just - after a clean installation. + 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. + 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. + Pro tip: using a snapshot of cleanly installed Virtual + machine is just fine. No need to reinstall for every testcase.
    - ) - break + ); + break; case "Server": l1 = (
    - The Server testcases usually require multiple machines to test the - server-client behaviour, and might feel a bit advanced. + The Server testcases usually require multiple + machines to test the server-client behaviour, and might feel a bit + advanced.
    - ) - break + ); + 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. + 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. +

    + Have a look at the{" "} + + Cloud provider setup guides for more details. +

    - ) - break + ); + break; default: - break + break; } return ( {subsections} - ) + ); } } class FedoraManualTestingItem extends Component { render() { - const extra_data = this.props.data.extra_data + const extra_data = this.props.data.extra_data; - const tc_url = extra_data.testcase_url - const name = this.props.data.name + const tc_url = extra_data.testcase_url; + const name = this.props.data.name; - const matrix_url = extra_data.matrix_url - var environment_examples = undefined + const matrix_url = extra_data.matrix_url; + var environment_examples = undefined; switch (extra_data.testtype) { case "Installation": environment_examples = ( x86_64 or ARM - ) - break + ); + break; case "Base": environment_examples = ( Workstation, Server, Xfce or{" "} Minimal - ) - break + ); + break; case "Desktop": environment_examples = ( Workstation or KDE - ) - break + ); + break; case "Server": environment_examples = ( x86_64 or aarch64 - ) - break + ); + break; default: - break + break; } - const testtype = extra_data.testtype - const tc_rawname = extra_data.display_name + const testtype = extra_data.testtype; + const tc_rawname = extra_data.display_name; return (
    1. - Identify the testcase and `environment` in our{" "} - - Tescase matrix - {" "} +

      + 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. + 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. + For this particular testcase,{" "} + {extra_data.envs.join(", ")}{" "} + {extra_data.envs.length > 1 + ? "environments are" + : "environment is"}{" "} + missing results.
    2. - Read the{" "} - - Testcase - {" "} - briefly, just to have a general idea of what you will be doing.{" "} +

      + 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 + 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 + 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 + 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 + Expected results describe what you should + check while testing in order to decide whether it Passed of + Failed
    3. - Based on the enviromnent, select and download and appropriate ISO{" "} - - here - - .{" "} +

      + 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 + 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. + 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"}{" "} + For this particular testcase,{" "} + {extra_data.envs.join(", ")}{" "} + {extra_data.envs.length > 1 + ? "environments are" + : "environment is"}{" "} missing results.
        @@ -252,11 +267,11 @@ class FedoraManualTestingItem extends Component {
      • - Study the{" "} - - Testcase - {" "} - thoroughly, to be sure you know what to do.{" "} +

        + Study the + Testcase thoroughly, to be sure you know what to do.{" "} +

        +
        • @@ -265,37 +280,36 @@ class FedoraManualTestingItem extends Component { The testcases are generally split into four sections:
          • - Description should give you a general idea of what is - being tested + 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 + 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 + 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 + 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{" "} + 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. +

          + 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. +

        @@ -304,87 +318,105 @@ class FedoraManualTestingItem extends Component {
      • 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. + +

        + 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 + + 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: + 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") + 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. + 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) + 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{" "} + 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. + 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. +

        + 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) + super(props); this.state = { modal: false, - } + }; - this.toggle = this.toggle.bind(this) + this.toggle = this.toggle.bind(this); } toggle(e) { this.setState({ modal: !this.state.modal, - }) - e.preventDefault() + }); + e.preventDefault(); } render() { - const project = this.props.buttonLabel.split(":")[0] - const ticket = this.props.buttonLabel.split(":")[1] //strip whitespace? + const project = this.props.buttonLabel.split(":")[0]; + const ticket = this.props.buttonLabel.split(":")[1]; //strip whitespace? return (
    @@ -395,7 +427,8 @@ class ModalInfo extends Component { isOpen={this.state.modal} toggle={this.toggle} className={this.props.className} - size="lg"> + size="lg" + > {project}

    {ticket}

    @@ -404,6 +437,6 @@ class ModalInfo extends Component {
    - ) + ); } } diff --git a/src/wizard/Wizard.js b/src/wizard/Wizard.js index a9ecb3e..99e2da2 100644 --- a/src/wizard/Wizard.js +++ b/src/wizard/Wizard.js @@ -1,19 +1,19 @@ -import React, { Component } from "react" -import WizardForm from "./WizardForm" -import Layout from "../layout/Layout" -import { oraculumApiUrl_v1 } from "../config" -import Actions from "./Actions" -import { Container, Row } from "reactstrap" +import React, { Component } from "react"; +import WizardForm from "./WizardForm"; +import Layout from "../layout/Layout"; +import { oraculumApiUrl_v1 } from "../config"; +import Actions from "./Actions"; +import { Container, Row } from "reactstrap"; -import { connect } from "react-redux" -import { loadWizardData } from "../actions/reduxActions" +import { connect } from "react-redux"; +import { loadWizardData } from "../actions/reduxActions"; class Wizard extends Component { constructor(props) { - super(props) + super(props); this.state = { actions: [], - } + }; } componentDidMount() { @@ -23,14 +23,14 @@ class Wizard extends Component { this.setState({ providers: data.providers, all_actions: data.actions, - }) - }) + }); + }); - this.props.dispatch(loadWizardData()) + this.props.dispatch(loadWizardData()); } show_actions(actions) { - this.setState({ actions }) + this.setState({ actions }); } render() { @@ -45,8 +45,12 @@ class Wizard extends Component { />

    Nothing sparked joy?

    - None of the above looks interesting to you? We'd be happy if you looked around at{" "} - https://whatcanidoforfedora.org/! + None of the above looks interesting to you? We'd be happy if you + looked around at{" "} + + https://whatcanidoforfedora.org/ + + !
    @@ -58,14 +62,14 @@ class Wizard extends Component { - ) + ); } } const mapStateToProps = (state) => { return { ...state.wizard, - } -} + }; +}; -export default connect(mapStateToProps)(Wizard) +export default connect(mapStateToProps)(Wizard);