Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improved grammar and fixed spelling and punctuation in the documentation. #374

Merged
Merged
Show file tree
Hide file tree
Changes from 7 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 19 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ https://github.com/Pradumnasaraf/preevy/assets/51878265/a699a356-f524-48fc-9b6d-

Preevy is a Command Line Interface (CLI) tool designed to simplify the process of creating ephemeral preview environments from Dockerized applications. Integrate Preevy into your CI flow to deploy Pull Requests as preview environments, using your existing cloud provider or Kubernetes cluster.

Preevy makes use of affordable VMs from [AWS Lightsail](https://aws.amazon.com/free/compute/lightsail), [Google Cloud](https://cloud.google.com/compute/), and [Microsoft Azure](https://azure.microsoft.com/en-us/products/virtual-machines), or any [Kubernetes cluster](https://preevy.dev/drivers/kube-pod).
Preevy makes use of affordable VMs from [AWS Lightsail](https://aws.amazon.com/free/compute/lightsail), [Google Cloud](https://cloud.google.com/compute/), [Microsoft Azure](https://azure.microsoft.com/en-us/products/virtual-machines), or any [Kubernetes cluster](https://preevy.dev/drivers/kube-pod).

Preevy can deploy your app with public or protected access, on the public internet or inside your existing private network.

Expand All @@ -39,7 +39,7 @@ Deploying a preview environment per Pull Request offers a range of benefits:

- 🎨 **Hassle-free Design Reviews**: Designers can verify implementation independently, minimizing interruptions.

- 🚀 **Parallel E2E Tests**: Use external test agents against preview environments expedite the testing process.
- 🚀 **Parallel E2E Tests**: Use external test agents against preview environments to expedite the testing process.

- 💡 **Streamlined Feedback Cycle**: Preview environments let your team engage with and feedback on new features early in the pipeline.

Expand Down Expand Up @@ -107,15 +107,15 @@ To start using the Preevy CLI you will need:
- A cloud provider for provisioning VMs (AWS/GCP/Azure), or a Kubernetes cluster (local, remote or managed)

If you don't have an existing cloud account or prefer to try Preevy first locally, you can use the [Docker Desktop Kubernetes server](https://docs.docker.com/desktop/kubernetes/). Go to:
Docker Settings -> Kubernetes -> Enable Kubernetes.
And follow the instructions below.
Docker Settings -> Kubernetes -> Enable Kubernetes and follow the instructions below.

*For provisioning a VM*, configure your provider:
- In AWS, it could be by using `aws configure`
- In GCP, it could be by using `gcloud auth application-default login`
- In Azure, it could be by using `az login`

*For provisioning a Pod on Kubernetes*, make sure a kubeconfig file exists and that you can run `kubectl` commands locally (e.g, `kubectl get pod`)
- In AWS, it could be done by using `aws configure`
- In GCP, it could be done by using `gcloud auth application-default login`
- In Azure, it could be done by using `az login`

*For provisioning a Pod on Kubernetes*, make sure a kubeconfig file exists and that you can run `kubectl` commands locally (e.g. `kubectl get pod`)

Running Preevy:

Expand Down Expand Up @@ -151,19 +151,19 @@ A Docker/OCI image is available on ghcr.io: ghcr.io/livecycle/preevy/tunnel-serv

## CI Integration

Preevy is designed to work seamlessly with your CI, allowing you to easily import a shared preview profile shared in AWS S3 and Google Cloud Storage (GCS).
Preevy is designed to work seamlessly with your CI, allowing you to easily import a shared preview profile in AWS S3 and Google Cloud Storage (GCS).

Profiles are created using `preevy init`. Choose a S3/GCS URL for storing the profile - Preevy will create a bucket if one doesn't exist.

If you already have a locally stored Preevy Profile, it can be migrated to a remote storage using [`preevy profile cp`](https://github.com/livecycle/preevy/blob/main/packages/cli/docs/profile.md#preevy-profile-cp)
If you already have a locally stored Preevy Profile, it can be migrated to remote storage using [`preevy profile cp`](https://github.com/livecycle/preevy/blob/main/packages/cli/docs/profile.md#preevy-profile-cp)

Once the profile is created, it can be imported to the CI runtime using `preevy init --from <profile-url>`

[Examples](https://preevy.dev/ci)

### Faster builds in CI

Check out our [documentation](https://preevy.dev/recipes/faster-build) to find out how to speed up your builds and reduce the costs of your preview environments by running Preevy with BuildKit builders in CI.
Check out our [documentation](https://preevy.dev/recipes/faster-build) to find out how to speed up your builds and reduce the costs of your preview environments by running Preevy with BuildKit Builders in CI.

## Security

Expand All @@ -188,7 +188,7 @@ Every Compose service is exposed individually with a generated URL in the follow

### Network isolation

The Tunnel Server can be deployed on a your private network (e.g, VPC), which access to your environments at the network level.
The Tunnel Server can be deployed on your private network (e.g. VPC), which access to your environments at the network level.

## Configuration

Expand All @@ -205,10 +205,10 @@ Preevy loads its configuration from the following sources, in order:
The Preevy profile is created by the `init` command and can be stored locally or remotely on your cloud provider. A profile is required to create environments. The profile includes the following:

<!--lint disable double-link-->
- A tunneling key, used to identify your services when connecting to the [Tunnel Server](#tunnel-server).
- A tunneling key, that is used to identify your services when connecting to the [Tunnel Server](#tunnel-server).
- The default driver to use for provisioning environments.
- Default driver options to use per driver (e.g, AWS region, K8s namespace).
- Driver state whos contents depend on the specific driver.
- Default driver options to use per driver (e.g. AWS region, K8s namespace).
- Driver state whose contents depend on the specific driver.
<!--lint enable double-link-->

Profiles can be migrated to a different storage location using `preevy profile cp`.
Expand All @@ -223,11 +223,11 @@ Preevy extracts its runtime settings from the [Compose file](https://docs.docker

#### Project Compose files

Just like with the `docker compose` CLI, you can use the global `--file | -f` command line argument to specify path(s) for the Compose file. If not specified, the [default loading order](https://docs.docker.com/compose/reference/#use--f-to-specify-name-and-path-of-one-or-more-compose-files) is used. Multiple files are [supported](https://docs.docker.com/compose/extends/#multiple-compose-files).
Just like with the `docker compose` CLI, you can use the global `--file | -f` command line argument to specify the path(s) for the Compose file. If not specified, the [default loading order](https://docs.docker.com/compose/reference/#use--f-to-specify-name-and-path-of-one-or-more-compose-files) is used. Multiple files are [supported](https://docs.docker.com/compose/extends/#multiple-compose-files).

#### Preevy-specific Compose file

In addition to the project compose files, an optional Preevy-specific Compose file can be used. Preevy attempts to load files named `compose.preevy.yaml`, `compose.preevy.yml`, `docker-compose.preevy.yaml` or `docker-compose.preevy.yml`. If one of these exists, it is loaded BEFORE the project compose file(s). The name of the Preevy-specific compose file can be overriden by spefcifying the argument `--system-compose-file`.
In addition to the project compose files, an optional Preevy-specific Compose file can be used. Preevy attempts to load files named `compose.preevy.yaml`, `compose.preevy.yml`, `docker-compose.preevy.yaml` or `docker-compose.preevy.yml`. If one of these exists, it is loaded BEFORE the project composes file(s). The name of the Preevy-specific compose file can be overridden by specifying the argument `--system-compose-file`.

### `x-preevy`: Preevy-specific configuration in the Compose file(s)

Expand Down Expand Up @@ -264,7 +264,7 @@ This value can be overridden per command execution using the `--driver` CLI flag
Override the default options per driver for this Compose project. See the [specific driver documentation](https://preevy.dev/deploy-runtimes/).
<!--lint enable double-link-->

These values can be overridden per command execution using the specific driver CLI flags, e.g, `--lightsail-bundle-id=2xlarge_2_0`
These values can be overridden per command execution using the specific driver CLI flags, e.g. `--lightsail-bundle-id=2xlarge_2_0`

Example:

Expand All @@ -287,7 +287,7 @@ See [Plugins](#plugins) below.

Plugins are a way to extend Preevy's functionality via externally-published NPM packages.

A plugin can add hooks which execute code in response to events. It can also define new commands, and add flags to existing commands to customize their behavior.
A plugin can add hooks that execute code in response to events. It can also define new commands, and add flags to existing commands to customize their behavior.

### Default plugins

Expand Down Expand Up @@ -341,4 +341,3 @@ To see the collected data, set the environment variable `PREEVY_TELEMETRY_FILE`
We appreciate the usage data sent to us as - it's the most basic and raw type of feedback we get from our users. However, if you are concerned about sending out data, you may choose to disable telemetry.

Telemetry collection can be disabled by setting the environment variable `PREEVY_DISABLE_TELEMETRY` to `1` or `true`.

2 changes: 1 addition & 1 deletion contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,6 @@ Preevy is Open Source and we love to receive contributions from the community. H
When contributing, please follow the guidelines:

1. **Contributors should be Preevy users**. If you haven't used Preevy yet, please take a few moments to set up an environment on your cloud provider, or even on a local K8S cluster.
1. Open a PR, issue or discussion on the repo to communicate your intents
1. Open a PR, issue, or discussion on the repo to communicate your intent
1. Either add automated tests or make sure to test the relevant adjacent flows manually.
1. Fix the documentation to reflect code changes where applicable.
2 changes: 1 addition & 1 deletion packages/cli/src/commands/purge.ts
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ const confirmPurge = async (

// eslint-disable-next-line no-use-before-define
export default class Purge extends DriverCommand<typeof Purge> {
static description = 'Delete all cloud provider machines, and potentially other resources'
static description = 'Delete all cloud provider machines and potentially other resources'

static flags = {
all: Flags.boolean({
Expand Down
4 changes: 2 additions & 2 deletions pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
<!-- Please fill in the below placeholders -->

**[Is this a bugfix/feature/doc-improvement?]**

## This is a

- [ ] Bug fix
Expand All @@ -11,10 +12,9 @@

### By submitting this pull request I confirm I've read and complied with the below requirements 🖖

- [ ] I have used Preevy for a while and am familiar with the function it providers.
- [ ] I have used Preevy for a while and am familiar with the function it provides.

If this is a bug fix or feature:

- [ ] I tested the proposed change on my cloud provider: **Please specify which provider**
- [ ] I tested the proposed change on a local Kubernetes cluster.

2 changes: 1 addition & 1 deletion site/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,4 @@ Not using SSH:
$ GIT_USER=<Your GitHub username> yarn deploy
```

If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push it to the `gh-pages` branch.
8 changes: 4 additions & 4 deletions site/docs/FAQs/docker-extension.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ sidebar_position: 15.1
<details>
<summary>What is the difference between the Livecycle Docker Extension and Ngrok?</summary>

The Livecycle Docker Extension is integrated with Docker, and provides a smoother experience for Docker users.
Consistent URLs, private environments, organizations and Google/Github authentication are supported out of the box.
Livecycle dashboard provides debugging capabilities that includes log inspection, shell access, and container inspection.
The Livecycle Docker Extension is integrated with Docker and provides a smoother experience for Docker users.
Consistent URLs, private environments, organizations, and Google/Github authentication are supported out of the box.
The Livecycle dashboard provides debugging capabilities that include log inspection, shell access, and container inspection.
Lastly, integration with the Preevy CLI allows you to create preview environments for Pull Requests - remote ephemeral environments that can be used when your development machine is offline.
</details>

Expand Down Expand Up @@ -41,7 +41,7 @@ sidebar_position: 15.1
Livecycle Docker extension is integrated with the Preevy CLI and the Livecycle managed service.
Using the Preevy CLI, you can provision remote ephemeral environments that can be used in addition to sharing local environments.
This functionality can also be used in your CI pipeline to provision preview environments for Pull Requests.
The Livecycle managed service adds additional layers of management, collaboration, review and debugging on top of shared environments.
The Livecycle managed service adds additional layers of management, collaboration, review, and debugging on top of shared environments.
</details>

<details>
Expand Down
4 changes: 2 additions & 2 deletions site/docs/ci/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import StoreInS3Screenshot from "./screenshots/store-in-s3.png";
Preevy is designed to be easily run in CI/CD workflows,
such as [GH Actions](https://github.com/features/actions), [Circle CI](https://circleci.com/) and others.

The most common use-case for a CI job that runs Preevy is to have a live preview environment for every Pull Request
The most common use case for a CI job that runs Preevy is to have a live preview environment for every Pull Request
as part of the review process. This allows for [more collaborative and inclusive review workflows](/intro/motivation)

## Walkthrough: Running Preevy in your GitHub actions CI
Expand Down Expand Up @@ -159,4 +159,4 @@ jobs:

You're all set! When you open a PR, Preevy will now build preview environments.
The [Preevy Github Plugin](/github-plugin) will automatically detect the GitHub context and post a comment on your PR with the links to each of the relevant services when they are available for review.
Teammates can simply click these links and preview your latest changes in their browser.
Teammates can simply click these links and preview your latest changes in their browsers.
6 changes: 3 additions & 3 deletions site/docs/cli-reference/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,16 +32,16 @@ USAGE
# Command Topics

* [`preevy down`](down.md) - Delete preview environments
* [`preevy help`](help.md) - Display help for preevy.
* [`preevy help`](help.md) - Display help for preevy
* [`preevy init`](init.md) - Initialize or import a new profile
* [`preevy login`](login.md) - Login to the Livecycle SaaS
* [`preevy logs`](logs.md) - Show logs for an existing environment
* [`preevy ls`](ls.md) - List preview environments
* [`preevy profile`](profile.md) - View and update profile configuration
* [`preevy purge`](purge.md) - Delete all cloud provider machines, and potentially other resources
* [`preevy purge`](purge.md) - Delete all cloud provider machines and potentially other resources
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CLI reference is auto-generated from the code - any changes will be reverted. You can make the change at the appropriate file in the commands dir

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have now made the change in the appropriate file. I am leaving this here so that these docs remain updated.

* [`preevy ssh`](ssh.md) - Execute a command or start an interactive shell inside an environment
* [`preevy up`](up.md) - Bring up a preview environment
* [`preevy urls`](urls.md) - Show urls for an existing environment
* [`preevy urls`](urls.md) - Show URLs for an existing environment
* [`preevy version`](version.md) - Show Preevy version

<!-- commandsstop -->
4 changes: 2 additions & 2 deletions site/docs/cli-reference/purge.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
`preevy purge`
==============

Delete all cloud provider machines, and potentially other resources
Delete all cloud provider machines and potentially other resources

* [`preevy purge`](#preevy-purge)

## `preevy purge`

Delete all cloud provider machines, and potentially other resources
Delete all cloud provider machines and potentially other resources

```
USAGE
Expand Down
4 changes: 2 additions & 2 deletions site/docs/cli-reference/urls.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
`preevy urls`
=============

Show urls for an existing environment
Show URLs for an existing environment

* [`preevy urls [SERVICE] [PORT]`](#preevy-urls-service-port)

## `preevy urls [SERVICE] [PORT]`

Show urls for an existing environment
Show URLs for an existing environment

```
USAGE
Expand Down
4 changes: 2 additions & 2 deletions site/docs/contribute-to-open-source.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ There are 2 options to develop preevy locally:
## Option 1 - Using the public livecycle.run Tunnel Server


This option is simpler and using the the deployed Tunnel Server under livecycle.run. Use this if you're only interested in testing and developing the CLI or the Compose Tunnel Agent
This option is simpler and uses the deployed Tunnel Server under livecycle.run. Use this if you're only interested in testing and developing the CLI or the Compose Tunnel Agent

Wherever you would normally run the `preevy` command, simply replace it with:

Expand Down Expand Up @@ -75,7 +75,7 @@ BASE_URL=http://localhost:8030 docker compose -f docker-compose.yml -f docker-co

### 3. Expose the service's SSH endpoint

Now we want to expose the tunnel service to the internet, so the machines running in the cloud could access it. In this example we'll be using [ngrok](https://ngrok.com/) to achieve that:
Now we want to expose the tunnel service to the internet, so the machines running in the cloud can access it. In this example, we'll be using [ngrok](https://ngrok.com/) to achieve that:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not sure removing the comma makes a better or more correct sentence

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No comma is removed; instead, one is added.


```bash
ngrok tcp 2223
Expand Down
6 changes: 3 additions & 3 deletions site/docs/dashboard/collaborative-reviews.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ title: Collaborative reviews

## Collaborative reviews

Livecycle makes it easy to not only create previews of your latest changes, but also to share them and collect feedback in context.
Livecycle makes it easy to not only create previews of your latest changes but also to share them and collect feedback in context.

Each of Livecycle's shared preview environments include built-in tools that enable technical teammates to review changes and access services from a browser, so they can see real-time logging, catch errors and execute commands in a terminal, and you can collaboratively fix issues mug earlier in the development lifecycle.
Each of Livecycle's shared preview environments includes built-in tools that enable technical teammates to review changes and access services from a browser, so they can see real-time logging, catch errors, and execute commands in a terminal, and you can collaboratively fix issues much earlier in the development lifecycle.

<iframe width="560" height="315" src="https://www.youtube.com/embed/_grdYVad_cM?si=G0HXS6kOV3Cwsxgh" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
<iframe width="560" height="315" src="https://www.youtube.com/embed/_grdYVad_cM?si=G0HXS6kOV3Cwsxgh" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
2 changes: 1 addition & 1 deletion site/docs/dashboard/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,6 @@ parent: /dashboard

## **Share code changes. Collect feedback.**

Livecycle makes it easy to not only create previews of your latest changes, but also to share them and collect feedback in context.
Livecycle makes it easy to not only create previews of your latest changes but also to share them and collect feedback in context.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not sure removing the comma makes a better or more correct sentence

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is correct according to Grammarly.


Using the Dashboard, you can invite teammates to ephemeral environments to review and provide feedback. Each team member can see the open projects assigned to them and review changes in their browser.
Loading