diff --git a/src/assets/service-account.mp4 b/src/assets/service-account.mp4
new file mode 100644
index 00000000..dfda40ce
Binary files /dev/null and b/src/assets/service-account.mp4 differ
diff --git a/src/components/Setup/Step0Welcome.tsx b/src/components/Setup/Step0Welcome.tsx
index ebf89467..3fa05d86 100644
--- a/src/components/Setup/Step0Welcome.tsx
+++ b/src/components/Setup/Step0Welcome.tsx
@@ -1,7 +1,6 @@
import { ISetupStepBodyProps } from "pages/Setup";
import { FormControlLabel, Checkbox, Typography, Link } from "@mui/material";
-import OpenInNewIcon from "components/InlineOpenInNewIcon";
import { useAppContext } from "contexts/AppContext";
import { EXTERNAL_LINKS } from "constants/externalLinks";
@@ -38,30 +37,15 @@ export default function Step0Welcome({
}
label={
<>
-
- I agree to the terms and conditions
-
+ I agree to the{" "}
- Read the simple English version
-
-
-
- Read the full terms and conditions
-
+ terms and conditions
>
}
diff --git a/src/components/Setup/Step1RowyRun.tsx b/src/components/Setup/Step1RowyRun.tsx
index f6dce24c..f4d89755 100644
--- a/src/components/Setup/Step1RowyRun.tsx
+++ b/src/components/Setup/Step1RowyRun.tsx
@@ -102,7 +102,7 @@ export default function Step1RowyRun({
title={
isValidRowyRunUrl
? `Rowy Run is set up at: ${rowyRunUrl}`
- : "Deploy Rowy Run to your Google Cloud Platform project."
+ : "Deploy Rowy Run to your Google Cloud project."
}
>
{!isValidRowyRunUrl && (
diff --git a/src/components/Setup/Step2ServiceAccount.tsx b/src/components/Setup/Step2ServiceAccount.tsx
index e2532767..926e11f8 100644
--- a/src/components/Setup/Step2ServiceAccount.tsx
+++ b/src/components/Setup/Step2ServiceAccount.tsx
@@ -5,7 +5,6 @@ import { Typography, Link, Stack } from "@mui/material";
import LoadingButton from "@mui/lab/LoadingButton";
import OpenInNewIcon from "@mui/icons-material/OpenInNew";
import InlineOpenInNewIcon from "components/InlineOpenInNewIcon";
-import InfoIcon from "@mui/icons-material/InfoOutlined";
import SetupItem from "./SetupItem";
@@ -13,6 +12,8 @@ import { name } from "@root/package.json";
import { useAppContext } from "contexts/AppContext";
import { rowyRun } from "utils/rowyRun";
import { runRoutes } from "constants/runRoutes";
+import { WIKI_LINKS } from "constants/externalLinks";
+import screenRecording from "assets/service-account.mp4";
export default function Step2ServiceAccount({
rowyRunUrl,
@@ -56,57 +57,48 @@ export default function Step2ServiceAccount({
return (
<>
-
- {name} Run uses the{" "}
-
- Firebase Admin SDK
- {" "}
- and{" "}
-
- Google Cloud SDKs
- {" "}
- to make changes to your Firestore database, authenticated with a{" "}
+
+ {name} Run uses a{" "}
service account
+ {" "}
+ to access your project. It operates exclusively on your GCP project, so
+ we never have access to any of your data.{" "}
+
+ Learn more
+
- .
-
-
- Rowy Run operates exclusively on your GCP project and we will never have
- access to your service account or any of your data.
-
-
Service Account User – required to deploy Cloud Functions
-
Firebase Authentication Admin
-
Firestore Service Agent
-
-
{!hasAllRoles && (
<>
+
+
Service Account User
+
Firebase Authentication Admin
+
Firestore Service Agent
+
+
)}
-
-
-
- On the Google Cloud Console page, click the Security tab to set
- the service account for Rowy Run.
-
-
+
+ Follow the steps in the screen recording below:
+
+
+
>
)}
-
-
- Learn about IAM roles
-
-
>
);
diff --git a/src/components/Setup/Step3ProjectOwner.tsx b/src/components/Setup/Step3ProjectOwner.tsx
index 938b4b8e..6228e3b8 100644
--- a/src/components/Setup/Step3ProjectOwner.tsx
+++ b/src/components/Setup/Step3ProjectOwner.tsx
@@ -62,10 +62,9 @@ export default function Step3ProjectOwner({
return (
<>
- The project owner requires the admin and owner roles to have full access
- to manage this project. The default project owner is the Google Cloud
- account used to deploy Rowy Run:{" "}
- {email}
+ The project owner requires full access to manage this project. The
+ default project owner is the Google Cloud account used to deploy Rowy
+ Run: {email} theme.breakpoints.down("md"));
+ const [confirmProject, setConfirmProject] = useState(false);
+ const [confirmFirestore, setConfirmFirestore] = useState(false);
+ const [confirmAuth, setConfirmAuth] = useState(false);
+
return (
@@ -33,41 +47,81 @@ export default function DeployPage() {
title="Get Started"
description={
<>
-
- Set up {name} on your Google Cloud Platform project with this
- one-click deploy button.
-
+
+
+ Make sure you have the following:
+
+
+ setConfirmProject(e.target.checked)}
+ />
+ }
+ label="A Google Cloud or Firebase project"
+ />
+ setConfirmFirestore(e.target.checked)}
+ />
+ }
+ label="Firestore enabled"
+ />
+ setConfirmAuth(e.target.checked)}
+ />
+ }
+ label="Firebase Authentication with the Google sign-in method enabled"
+ />
+
+
-
- You must have a project set up on Google Cloud Platform or
- Firebase.
-
+
+ Don’t have a project? Follow our{" "}
- Learn how to create one
-
-
+ step-by-step guide
+ {" "}
+ to get started.
>
}
>
-
+ {confirmProject && confirmFirestore && confirmAuth ? (
+
+
+
+ ) : (
-
+ )}