Skip to content

Commit

Permalink
hotfix incorrect hash section references, adjust files listed in inde…
Browse files Browse the repository at this point in the history
…x.js to only reference files currently included in repo, remove Test markdown file
  • Loading branch information
derekwolpert committed Oct 6, 2022
1 parent 91e86ed commit a18fbe2
Show file tree
Hide file tree
Showing 17 changed files with 58 additions and 112 deletions.
3 changes: 3 additions & 0 deletions docs/Applications.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
# Applications

Applications are a representation of an entire system defined in a single software repository. They store [Builds](/docs/Builds.md) of the [Source Code](/docs/Builds.md#source-code) and can host several [Environments](/docs/Environments.md).

## Linked Repositories

Applications can be linked to a Repository to integrate with it's code and events automatically. Linked Resositories connect Source Code to Builds and power [Pipelines](/docs/Pipelines.md).

## Noop Application Model

Noop offers a broad set of [Components](/docs/Components.md), [Resources](/docs/Resources.md), and other options like [Routes](/docs/Traffic.md#routing-rules) to build your Application. You define your needs in your [AppManifest](/docs/Manifests.md#appmanifest) within your code. This means that your code completely describes itself as a system, not through the intermediate levels of containers or infrastructure.

You can mix and match as many Components and Resources as you need in your Application as it grows and evolves. We strive to offer the least-opinionated building blocks possible for your to use when designing and constructing your code. Noop only has opinions to how you code when there aren't decent standards-based practices available and there is a compelling benefit to our users.
Expand Down
9 changes: 9 additions & 0 deletions docs/Builds.md
Original file line number Diff line number Diff line change
@@ -1,30 +1,39 @@
# Builds

A Build is an artifact of your [Component](/docs/Components.md) Source Code that has been processed through your own [Build Steps](#build-steps).

## Build Steps

You can define any compilation, packaging, or testing steps for your Components within the [AppManifest](/docs/Manifests.md#appmanifest).

### Run Step

Execute a command.

```yaml
steps:
- run: npm ci
```
### Copy Step
Copy files from your source code into the current directory.
```yaml
steps:
- copy: package.json
- copy: *
```
### Directory Step
Set the current working directory.
```yaml
steps:
- directory: /build
```
## Source Code
Source Code represents a discreet version of your code that has been indexed and archived by Noop.
4 changes: 3 additions & 1 deletion docs/Clusters.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Clusters

A Cluster is an instance of Noop infrastructure running in a designated region. They provide a high degree of isolation for compute and data.

## Shared Clusters
While in our private preview, we are only offering a few shared Clusters to be used by all participants.

While in our private preview, we are only offering a few shared Clusters to be used by all participants.
1 change: 1 addition & 0 deletions docs/Components.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Components

The [Noop Application Model](/docs/Applications.md#noop-application-model) supports several Components you can define for how we build and run your code. You can mix and match multiple Components to meet your evolving needs. Want to add a new microservice to your architecture, easy just define a new Service. Need to run a cron job nightly, just define a Task. Developing the next version of your API in a new framework, it can be defined alongside the current version with Routes to specific which version handles which requests.

## Services
Expand Down
11 changes: 6 additions & 5 deletions docs/Deployments.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,12 @@
Deployments are the main way to rollout your code and configuration changes to an [Environment](/docs/Environments.md). They take advantage of [Stacks](/docs/Stacks.md) to run multiple instances of your NoopApp concurrently in the same Environment while controlling [Traffic](/docs/Traffic.md) between them. Only one Deployment can be in progress at a time for an Environment.

## Default Workflow

Our default Deployment [Workflow](/docs/Workflows.md) simply brings up your new code in new components, moves traffic over to it, and then destroys the old components that were running (aka blue/green). Here's a little more detail on what happens during a Deployment...

- We create a new **Green Stack** in the Environment with [Scaling](/docs/Components.md#Services/Scaling) & [Traffic](/docs/Stacks.md#Traffic) disabled.
- All **BeforeServices** [Lifecycle Tasks](/docs/Applications.md#Lifecycles) are executed in **Green Stack**
- A [Scaling Adjustment](/docs/Stacks.md#ScalingAdjustments) launches all [Services](/docs/Components.md#Services) in **Green Stack** and waits for them to complete [Health Checks](/docs/Components.md#Services/HealthChecks)
- All **BeforeTraffic** [Lifecycle Tasks](/docs/Applications.md#Lifecycles) are executed in **Green Stack**
- [Traffic](/docs/Stacks.md#Traffic) is enabled to the **Green Stack**
- We create a new **Green Stack** in the Environment with [Scaling](/docs/Components.md#scaling) & [Traffic](/docs/Stacks.md#traffic) disabled.
- All **BeforeServices** [Lifecycle Tasks](/docs/Applications.md#lifecycles) are executed in **Green Stack**
- A [Scaling Adjustment](/docs/Stacks.md#scaling-adjustments) launches all [Services](/docs/Components.md#services) in **Green Stack** and waits for them to complete [Health Checks](/docs/Components.md#health-checks)
- All **BeforeTraffic** [Lifecycle Tasks](/docs/Applications.md#services-lifecycles) are executed in **Green Stack**
- [Traffic](/docs/Stacks.md#traffic) is enabled to the **Green Stack**
- Finally, the **Blue Stack** that was running previously, is destroyed once Traffic is drained
3 changes: 2 additions & 1 deletion docs/Environments.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
# Environments
Environments are an isolated space for a single instance of an [Application](/docs/Applications.md). They run on a designated [Cluster](/docs/Clusters.md) and contain the [Resources](/docs/Resources.md) needed by your Application.

Environments are an isolated space for a single instance of an [Application](/docs/Applications.md). They run on a designated [Cluster](/docs/Clusters.md) and contain the [Resources](/docs/Resources.md) needed by your Application.
4 changes: 3 additions & 1 deletion docs/Local.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Local Development

In Noop Desktop, you can run your NoopApps on your local development machine and quickly iterate on your code. It leverages Docker Desktop to run local containers of all your Components and Resources.

## Download
Download [Noop Desktop](https://noop.dev/download) now!

Download [Noop Desktop](https://noop.dev/download) now!
6 changes: 4 additions & 2 deletions docs/Logic.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Logic
Noop Logic allows complex, dynamic expressions throughout Noop. This includes [Traffic Routes](/docs/Traffic.md#routing-rules), [Pipeline Conditions](/docs/Pipelines.md#conditions), [Log Queries](/docs/Logs.md#Querying), and more.

Noop Logic allows complex, dynamic expressions throughout Noop. This includes [Traffic Routes](/docs/Traffic.md#routing-rules), [Pipeline Conditions](/docs/Pipelines.md#conditions), [Log Queries](/docs/Logs.md#querying), and more.

## Operators
Coming Soon!

Coming Soon!
5 changes: 4 additions & 1 deletion docs/Logs.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
# Logs
Logs within Noop are grouped by broad contexts, like [Environments](/docs/Environments.md) or [Traffic Endpoints](/docs/Traffic.md) and are easily queryable down to your interest.

Logs within Noop are grouped by broad contexts, like [Environments](/docs/Environments.md) or [Traffic Endpoints](/docs/Traffic.md) and are easily queryable down to your interest.

## Querying

All our logs are JSON structured and can be queried with [Noop Logic](/docs/Logic.md). If your Components output their logs in JSON, you can query their contents as well. Noop also supports full-text searching of all logs.

## Live Tailing

When viewing recent logs without specifying an end time, Noop will automatically tail and stream the log events to you.
1 change: 0 additions & 1 deletion docs/Manifests.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,5 +83,4 @@ resources:
type: mysql
- name: S3Bucket
type: s3

```
9 changes: 6 additions & 3 deletions docs/Pipelines.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
# Pipelines

Pipelines enable you to run [Workflows](/docs/Workflows.md) in response to [Repository Events](/docs/Applications.md#linked-repositories). This includes continuous integration and delivery (CI/CD) as well as so much more. They are a great way to have Noop automatically respond to changes in your [Source Code](/docs/Builds.md#source-code)

## Templates

We offer several Pipeline Templates to get you started right away.

- Build All Pushed Code
- Build & Deploy on Branch Push
- Build & Deploy on Tag Push
- Build & Deploy on Branch Push
- Build & Deploy on Tag Push
- Ephemeral Pull Request Environments

## Conditions
You can express a condition in [Noop Logic](/docs/Logic.md) that is tested against every Repository Event received for your Application. Conditions might include certain events, like pushes, or specific code branches.

You can express a condition in [Noop Logic](/docs/Logic.md) that is tested against every Repository Event received for your Application. Conditions might include certain events, like pushes, or specific code branches.
2 changes: 1 addition & 1 deletion docs/QuickStart.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ There are two different ways to quickly get up and running with Noop. You can do

## The NoopApp

We use the term "NoopApp" to describe application source code configured to run using the [Noop Application Model](/docs/Applications.md#NoopApplicationModel). Primarily, this requires describing your application with a [AppManifest](/docs/Manifests.md#AppManifest) in your source code at `.noop/app.yml`.
We use the term "NoopApp" to describe application source code configured to run using the [Noop Application Model](/docs/Applications.md#noop-application-model). Primarily, this requires describing your application with a [AppManifest](/docs/Manifests.md#appmanifest) in your source code at `.noop/app.yml`.

## Blueprints

Expand Down
6 changes: 5 additions & 1 deletion docs/Resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,15 @@
Resources handle the persistent, stateful needs of your code. While [Components]() come and go as your code changes, Resources persist in your [Environment]().

## S3 Buckets

```yaml
resources:
- name: ImagesBucket
type: s3
```
## DynamoDB Tables
```yaml
resources:
- name: Customers
Expand All @@ -19,15 +21,17 @@ resources:
```
## MySQL Databases
```yaml
resources:
- name: Inventory
type: mysql
```
## PostgreSQL Databases
```yaml
resources:
- name: Orders
type: postgresql
```
```
90 changes: 0 additions & 90 deletions docs/Test.md

This file was deleted.

6 changes: 5 additions & 1 deletion docs/Traffic.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Traffic

Noop regards HTTP Traffic routing and inspection as a core competency.
Noop regards HTTP Traffic routing and inspection as a core competency.

```mermaid
flowchart LR
Expand All @@ -11,13 +11,17 @@ Stack --> Component
```

## Internet Endpoints

Secure, public Internet Endpoints that are hosted by our global routing network. Noop manages HTTPS certificates and even offers free domains to get online fast.

## Localstack

Secure, internal communication between the Components of a [Stack](/docs/Stacks.md) leveraging Routing Rules. Easily available from any Component by making HTTP requests to `http://localstack`.

## Routing Rules

Leverage [Noop Logic](/docs/Logic.md) to evaluate the request headers of a stream to decide it's target.

## Rewriting Headers

Coming Soon!
3 changes: 2 additions & 1 deletion docs/Workflows.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Workflows

## Actions
Coming Soon!

Coming Soon!
7 changes: 4 additions & 3 deletions lib/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,17 +10,18 @@ class Documentation {
'Environments',
'Builds',
'Pipelines',
'Endpoints',
'Components',
'Resources',
'Routing',
'Deployments',
'Traffic',
'Logs',
'Clusters',
'Local',
'Manifests',
'Logic',
'Logic'
// 'Runbooks',
// 'Stacks',
// 'Workflows',
]

version
Expand Down

0 comments on commit a18fbe2

Please sign in to comment.