Harmonize docs with intro paragraph from CLI spec
Signed-off-by: Solomon Hykes <sh.github.6811@hykes.org>
This commit is contained in:
parent
ab6518cca0
commit
437aba7fdb
12
README.md
12
README.md
@ -2,13 +2,15 @@
|
|||||||
|
|
||||||
Dagger is a platform for deploying your code using code.
|
Dagger is a platform for deploying your code using code.
|
||||||
|
|
||||||
Using Dagger, software teams can create custom deployment routes for their application, tailor-made for their infrastructure and workflow, in just a few lines of code.
|
Using Dagger, software builders can create powerful deployment workflows, tailor-made for their application,
|
||||||
|
in just a few lines of code.
|
||||||
|
|
||||||
For example, an application may have a production route, a staging route for QA and product reviews, and on-demand development routes for testing new features.
|
Thanks to its vast ecosystem of reusable packages and flexible scripting environment, Dagger can deploy virtually any
|
||||||
|
application to any infrastructure, and integrate with any CI and build system. Think of it as your "devops superglu".
|
||||||
|
|
||||||
Dagger can create routes dynamically, which makes it a great fit for custom scripting and CI integration. Ever wanted to stand up a production-like deployment of your entire app for each pull request? Run integration tests across the development branches of multiple microservice repositories? See what your code will look like in production *before* opening a PR? Dagger provides a reliable foundation for automating these workflows, and many more.
|
Using Dagger, no matter how your deployment works under the hood, you can always manage it with the same intuitive interface.
|
||||||
|
This makes developers more productive, because they don't have to learn a new workflow every time their deployment
|
||||||
Every Dagger route exposes the same standardized interface, designed for maximum developer productivity. Do you wish you could get the ease of use of Heroku without its limitations? With Dagger, each deployment route is like a miniature Heroku custom-built around your stack, instead of the other way around.
|
system changes.
|
||||||
|
|
||||||
## Alpha disclaimer
|
## Alpha disclaimer
|
||||||
|
|
||||||
|
@ -32,8 +32,7 @@ import (
|
|||||||
Dagger works by running *controllers*: specialized programs each automating
|
Dagger works by running *controllers*: specialized programs each automating
|
||||||
the deployment of a particular application in a particular way.
|
the deployment of a particular application in a particular way.
|
||||||
|
|
||||||
Multiple controllers can deploy the same application in different ways,
|
The same application can be deployed in different ways by different controllers, for example to create distinct production and staging environments.
|
||||||
for example to deploy distinct production and staging environments.
|
|
||||||
|
|
||||||
Technically speaking, a controller is a standalone program with its own code and data,
|
Technically speaking, a controller is a standalone program with its own code and data,
|
||||||
run by the Dagger platform.
|
run by the Dagger platform.
|
||||||
|
@ -1,8 +1,29 @@
|
|||||||
# Dagger Programmer Guide
|
# Dagger Programmer Guide
|
||||||
|
|
||||||
## The Dagger programming model
|
## Overview
|
||||||
|
|
||||||
*FIXME*
|
Dagger works by running *controllers*: specialized programs each automating
|
||||||
|
the deployment of a particular application in a particular way.
|
||||||
|
|
||||||
|
The same application can be deployed in different ways by different controllers, for example to create distinct production and staging environments.
|
||||||
|
|
||||||
|
Technically speaking, a controller is a standalone program with its own code and data,
|
||||||
|
run by the Dagger platform.
|
||||||
|
|
||||||
|
Unlike traditional programs which strictly separate code and data,
|
||||||
|
Dagger merges them into a unified DAG (direct acyclic graph)
|
||||||
|
using a powerful declarative language called [CUE](https://cuelang.org).
|
||||||
|
Each node of the DAG represents a step of the controller's deployment plan.
|
||||||
|
|
||||||
|
Unlike traditional programs which run continuously, Dagger controllers are
|
||||||
|
*reactive*: their DAG is recomputed upon receiving a new input.
|
||||||
|
|
||||||
|
The Dagger platform natively supports [LLB](https://github.com/moby/buildkit) pipelines
|
||||||
|
pioneered by the Buildkit project.
|
||||||
|
This allows controllers to run sophisticated pipelines to ingest and process
|
||||||
|
artifacts such as source code, binaries, database exports, ML models, etc.
|
||||||
|
Best of all, LLB pipelines can securely build and run any docker/OCI container,
|
||||||
|
effectively allowing Dagger to be scriptable in any language.
|
||||||
|
|
||||||
## What is a DAG?
|
## What is a DAG?
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user