Skip to content
This repository has been archived by the owner on Feb 5, 2021. It is now read-only.

Commit

Permalink
README cleanup (#467)
Browse files Browse the repository at this point in the history
* First step towards simplifying the README

* More improvements to README

* More improvements to README

* More improvements to README

* More improvements to README

* More improvements to README

* More improvements to README

* More improvements to README

* More improvements to README

* More improvements to README

* More improvements to README

* More improvements to README

* Updates during review with Paul

* Update during review with Paul

* More improvements to README

* More improvements to README

* More improvements to README

* More improvements to README

* More improvements to README

* More improvements to README

* Update README file and add other files.

The README file was cleaned up and restructured in order to improve readability.
The previous file was clutterred with too much information.

* Update README file and add other files

The README file was cleaned up and restructured in order to improve readability.
The previous file was clutterred with too much information.

* Update README file and add other files

The README file was cleaned up and restructured in order to improve readability.
The previous file was clutterred with too much information.

Squashed commit of the following:

commit 2f5faac
Merge: dce794b 9f5378a
Author: afkham <afkham@gmail.com>
Date:   Mon Jul 1 15:01:16 2019 +0530

    Merge branch 'master' of https://github.com/afkham/sdk

commit dce794b
Author: afkham <afkham@gmail.com>
Date:   Mon Jul 1 15:00:45 2019 +0530

    Update README file and add other files

    The README file was cleaned up and restructured in order to improve readability.
    The previous file was clutterred with too much information.

commit 9f5378a
Merge: d58d669 ede67ca
Author: afkham <afkham@gmail.com>
Date:   Mon Jul 1 14:57:42 2019 +0530

    Merge branch 'master' of https://github.com/afkham/sdk

commit d58d669
Author: afkham <afkham@gmail.com>
Date:   Mon Jul 1 14:56:04 2019 +0530

    Update README file and add other files.

    The README file was cleaned up and restructured in order to improve readability.
    The previous file was clutterred with too much information.

commit ede67ca
Author: afkham <afkham@gmail.com>
Date:   Mon Jul 1 14:52:28 2019 +0530

    More improvements to README

commit 4ffe0c0
Author: afkham <afkham@gmail.com>
Date:   Mon Jul 1 14:33:27 2019 +0530

    More improvements to README

commit 446e36b
Author: afkham <afkham@gmail.com>
Date:   Mon Jul 1 12:47:24 2019 +0530

    More improvements to README

commit 647cb79
Author: afkham <afkham@gmail.com>
Date:   Mon Jul 1 12:02:02 2019 +0530

    More improvements to README

commit 253c0d3
Author: afkham <afkham@gmail.com>
Date:   Fri Jun 28 15:11:06 2019 +0530

    More improvements to README

commit a9f0c4e
Author: afkham <afkham@gmail.com>
Date:   Fri Jun 28 15:05:53 2019 +0530

    More improvements to README

commit efb9563
Author: Afkham Azeez <afkham@gmail.com>
Date:   Fri Jun 28 15:05:00 2019 +0530

    Update during review with Paul

commit 35efe37
Author: Afkham Azeez <afkham@gmail.com>
Date:   Fri Jun 28 14:50:17 2019 +0530

    Updates during review with Paul

commit a7d52e4
Author: afkham <afkham@gmail.com>
Date:   Fri Jun 28 14:09:01 2019 +0530

    More improvements to README

commit ea3c880
Author: afkham <afkham@gmail.com>
Date:   Fri Jun 28 12:18:37 2019 +0530

    More improvements to README

commit 5ba1211
Merge: 55a7191 6c5a281
Author: afkham <afkham@gmail.com>
Date:   Fri Jun 28 11:03:10 2019 +0530

    Merge branch 'master' of https://github.com/wso2-cellery/sdk

commit 6c5a281
Author: Izza <isurulucky@gmail.com>
Date:   Fri Jun 28 08:32:52 2019 +0530

    fix test failures

commit 40c0168
Author: Izza <isurulucky@gmail.com>
Date:   Wed Jun 26 20:48:01 2019 +0530

    route traffic - initial changes

commit 45ef3a1
Merge: 23cc666 42d25f4
Author: Nadun De Silva <nadunrds@gmail.com>
Date:   Fri Jun 28 10:08:02 2019 +0530

    Merge pull request #445 from nadundesilva/login

    Add required CORS headers to the Server opened for SDK login

commit 23cc666
Author: Deependra Ariyadewa <deependra@gmail.com>
Date:   Thu Jun 27 20:20:30 2019 +0530

    Alter the balfile path to support docker builder.

commit 431952f
Author: Deependra Ariyadewa <deependra@gmail.com>
Date:   Thu Jun 27 12:42:21 2019 +0530

    Alter the file name to support docker runtime.

commit dc1336b
Author: Deependra Ariyadewa <deependra@gmail.com>
Date:   Wed Jun 26 15:51:34 2019 +0530

    Add user id support to the build command.

commit 811388c
Author: Deependra Ariyadewa <deependra@gmail.com>
Date:   Wed Jun 26 11:27:16 2019 +0530

    Fixed linux uid issue.

commit 55a7191
Author: afkham <afkham@gmail.com>
Date:   Thu Jun 27 20:49:18 2019 +0530

    More improvements to README

commit 42d25f4
Author: NadunDeSilva <nadunrds@gmail.com>
Date:   Thu Jun 27 20:25:40 2019 +0530

    Add redirect to auth failure page upon CLI login failure

commit 83bad35
Author: NadunDeSilva <nadunrds@gmail.com>
Date:   Thu Jun 27 19:57:34 2019 +0530

    Add required CORS headers to the Server opened for SDK login

    # Since the CORS headers are required for pinging the endpoint exposed for SDK login, the headers were added when a ping request is received

commit 3984a7b
Author: afkham <afkham@gmail.com>
Date:   Thu Jun 27 19:54:16 2019 +0530

    More improvements to README

commit a3b51ab
Author: afkham <afkham@gmail.com>
Date:   Thu Jun 27 18:49:35 2019 +0530

    More improvements to README

commit b7a19a6
Author: afkham <afkham@gmail.com>
Date:   Thu Jun 27 18:49:06 2019 +0530

    More improvements to README

commit b745db9
Author: afkham <afkham@gmail.com>
Date:   Thu Jun 27 18:45:58 2019 +0530

    More improvements to README

commit e06fa4b
Author: afkham <afkham@gmail.com>
Date:   Thu Jun 27 18:41:01 2019 +0530

    More improvements to README

commit c0ced18
Author: afkham <afkham@gmail.com>
Date:   Thu Jun 27 18:32:53 2019 +0530

    More improvements to README

commit b0413db
Author: afkham <afkham@gmail.com>
Date:   Thu Jun 27 18:21:31 2019 +0530

    More improvements to README

commit 1f4c152
Author: afkham <afkham@gmail.com>
Date:   Thu Jun 27 17:39:33 2019 +0530

    More improvements to README

commit 0e4a96e
Author: afkham <afkham@gmail.com>
Date:   Thu Jun 27 16:46:45 2019 +0530

    First step towards simplifying the README

commit deb24b1
Merge: 4480048 6aac01a
Author: sinthuja <s.rajan.sinthu@gmail.com>
Date:   Thu Jun 27 12:32:39 2019 +0530

    Merge pull request #444 from afkham/master

    Sanitized the README file

commit 6aac01a
Author: afkham <afkham@gmail.com>
Date:   Thu Jun 27 12:29:14 2019 +0530

    Improve README by introducing line breaks, using Cellery with a capital c consistently and wrapping commands within quotes

commit fb0cda4
Author: afkham <afkham@gmail.com>
Date:   Thu Jun 27 12:23:56 2019 +0530

    Improve README by introducing line breaks, using Cellery with a capital c consistently and wrapping commands within quotes

commit 4480048
Merge: 480a78b 4cf58f8
Author: sinthuja <s.rajan.sinthu@gmail.com>
Date:   Wed Jun 26 18:34:43 2019 +0530

    Merge pull request #442 from anuruddhal/master

    Add exposed components to metadata.json

commit 4cf58f8
Author: anuruddhal <anuruddhal@wso2.com>
Date:   Wed Jun 26 14:55:53 2019 +0530

    Add exposed components to metadata.json

commit 480a78b
Merge: d7c7c10 66dffcd
Author: Nadun De Silva <nadunrds@gmail.com>
Date:   Wed Jun 26 15:35:25 2019 +0530

    Merge pull request #443 from tharindulak/master

    Increased cellery login timeout

commit 66dffcd
Author: tharindulak <tharindu.jayathilake1@gmail.com>
Date:   Wed Jun 26 15:14:30 2019 +0530

    Increased cellery login timeout

commit d7c7c10
Author: NadunDeSilva <nadunrds@gmail.com>
Date:   Wed Jun 26 14:07:15 2019 +0530

    Fix bug in Cellery login

    # Due to how the channels were used previously, the flow where the credentials are taken from the terminal hanged infinitely. This was fixed by organizing and introducing new channels

commit 6b11e93
Author: MadhukaHarith <madhukaw@wso2.com>
Date:   Thu Jun 20 17:46:03 2019 +0530

    Add verbose mode for setup create gcp command

commit 9e55ab4
Author: MadhukaHarith <madhukaw@wso2.com>
Date:   Wed Jun 26 13:51:34 2019 +0530

    Refactor --complete flag as a persistent flag

commit 9747706
Author: MadhukaHarith <madhukaw@wso2.com>
Date:   Thu Jun 20 17:04:16 2019 +0530

    Add verbose mode for setup list clusters, switch, cleanup existing cluster commands

commit b208ae8
Author: MadhukaHarith <madhukaw@wso2.com>
Date:   Tue Jun 25 10:05:46 2019 +0530

    Add missing examples to cli setup commands

commit 614b4da
Author: MadhukaHarith <madhukaw@wso2.com>
Date:   Thu Jun 20 14:37:38 2019 +0530

    Remove unused structs and functions

commit 68f2f64
Author: MadhukaHarith <madhukaw@wso2.com>
Date:   Thu Jun 20 12:33:54 2019 +0530

    Add verbose mode for logs, run commands

commit 2808563
Author: MadhukaHarith <madhukaw@wso2.com>
Date:   Thu Jun 20 11:11:58 2019 +0530

    Add verbose mode for logs command

commit 31473bc
Author: MadhukaHarith <madhukaw@wso2.com>
Date:   Thu Jun 20 08:11:17 2019 +0530

    Refactore list images command

commit a4420a5
Author: MadhukaHarith <madhukaw@wso2.com>
Date:   Thu Jun 20 08:06:01 2019 +0530

    Add verbose mode for list ingresses command

commit 0f193bb
Author: MadhukaHarith <madhukaw@wso2.com>
Date:   Wed Jun 19 17:53:25 2019 +0530

    Add verbose mode for list components commands

commit bdcc1b2
Merge: 68bcad9 8128b10
Author: sinthuja <s.rajan.sinthu@gmail.com>
Date:   Wed Jun 26 14:11:29 2019 +0530

    Merge pull request #440 from anuruddhal/master

    Add component dependencies to metadata.json

commit 8128b10
Author: anuruddhal <anuruddhal@wso2.com>
Date:   Wed Jun 26 12:47:27 2019 +0530

    Add component dependencies for metadata.json

commit 68bcad9
Merge: 90f603b 6c9b748
Author: Anuruddha Lanka Liyanarachchi <anuruddhal@wso2.com>
Date:   Wed Jun 26 11:20:19 2019 +0530

    Merge pull request #439 from sinthuja/readme-update

    Readme update

commit 6c9b748
Author: sinthuja <s.rajan.sinthu@gmail.com>
Date:   Wed Jun 26 10:41:22 2019 +0530

    remove employee cell changes

commit f13e6cb
Author: sinthuja <s.rajan.sinthu@gmail.com>
Date:   Wed Jun 26 10:36:29 2019 +0530

    Add wiki 0.3 roadmap link

commit 7b87aa0
Merge: 23b0d05 90f603b
Author: sinthuja <s.rajan.sinthu@gmail.com>
Date:   Wed Jun 26 10:30:30 2019 +0530

    Merge branch 'cellery-master'

commit 90f603b
Author: anuruddhal <anuruddhal@wso2.com>
Date:   Tue Jun 25 14:25:06 2019 +0530

    Add probes test cases

commit c79da95
Author: anuruddhal <anuruddhal@wso2.com>
Date:   Tue Jun 25 09:44:58 2019 +0530

    Implement runtime probe config update

commit 2b10137
Author: anuruddhal <anuruddhal@wso2.com>
Date:   Mon Jun 24 14:54:28 2019 +0530

    Remove generated bal

commit 33baf8c
Author: anuruddhal <anuruddhal@wso2.com>
Date:   Mon Jun 24 11:17:02 2019 +0530

    Add new sample

commit 9962941
Author: anuruddhal <anuruddhal@wso2.com>
Date:   Wed Jun 19 14:28:05 2019 +0530

    Update createInstance to read probe values

commit a894d6f
Author: anuruddhal <anuruddhal@wso2.com>
Date:   Tue Jun 18 14:37:40 2019 +0530

    Update README code

commit df98c9a
Author: anuruddhal <anuruddhal@wso2.com>
Date:   Tue Jun 18 14:28:25 2019 +0530

    Implement liveness and rediness probe support

commit 67f533a
Author: Miraj Abeysekara <miraj@wso2.com>
Date:   Tue Jun 25 18:00:10 2019 +0530

    Fix error handling in existing cluster setup

commit cfaf498
Author: anuruddhal <anuruddhal@wso2.com>
Date:   Tue Jun 25 10:29:09 2019 +0530

    Fix employee sample

commit 6d3bc5f
Author: Anjana Supun <anjanasupun05@gmail.com>
Date:   Tue Jun 25 11:09:39 2019 +0530

    Fix docker flow

commit 5a4f4d5
Merge: b89ed77 64a4d2c
Author: Nadun De Silva <nadunrds@gmail.com>
Date:   Tue Jun 25 10:59:48 2019 +0530

    Merge pull request #424 from tharindulak/master

    Corrected auth fail redirect url and added ping to listen from api

commit 23b0d05
Merge: 54b233e b89ed77
Author: sinthuja <s.rajan.sinthu@gmail.com>
Date:   Mon Jun 24 15:42:47 2019 +0530

    Merge branch 'cellery-master'

commit 64a4d2c
Author: tharindulak <tharindu.jayathilake1@gmail.com>
Date:   Mon Jun 24 15:30:48 2019 +0530

    Corrected auth fail redirect fail url and added ping to listen from api

commit b89ed77
Author: Anjana Supun <anjanasupun05@gmail.com>
Date:   Mon Jun 24 13:52:11 2019 +0530

    Fix test cases

commit 54b233e
Merge: f36bf72 94715bd
Author: sinthuja <s.rajan.sinthu@gmail.com>
Date:   Thu Jun 20 18:36:12 2019 +0530

    Merge branch 'cellery-master'

commit f36bf72
Author: sinthuja <s.rajan.sinthu@gmail.com>
Date:   Fri May 31 12:24:46 2019 +0530

    Fix formatting issue

commit 2763f90
Author: sinthuja <s.rajan.sinthu@gmail.com>
Date:   Fri May 31 12:16:38 2019 +0530

    Update readme with known issue
  • Loading branch information
afkham authored and sinthuja committed Jul 1, 2019
1 parent b89a97d commit f5d1d08
Show file tree
Hide file tree
Showing 6 changed files with 364 additions and 288 deletions.
426 changes: 139 additions & 287 deletions README.md

Large diffs are not rendered by default.

6 changes: 6 additions & 0 deletions docs/community.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
### Cellery community

You can engage with the Cellery community using these channels:

1. [Cellery dev mailing list](mailto:celler-dev@googlegroup.com) - ask questions about Cellery
2. [Report issues](https://github.com/wso2-cellery/sdk/issues) - report issues in Cellery
Binary file added docs/images/cellery-intro.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
29 changes: 29 additions & 0 deletions docs/installation-options.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
## Cellery runtime installation options

### Basic vs. complete installations
When it comes to installing Cellery, you could choose between the basic or complete installation options.
When you run the `cellery setup` command, you can choose to either install the basic or complete version.
The basic installation would require less resources in comparison to the complete installation.
The following table offers a comparison between what you would get.

| Packages | Components | Supported Functionality |
|----------|------------|-------------------------|
| Basic | <ul><li>Cell controller</li><li>Light weight Identity Provider</li></ul>|<ul><li>HTTP(S) cells with local APIs</li><li>Full support for web cells</li><li>Inbuilt security for inter cell and intra cell communication</li></ul> |
| Complete | <ul><li>Cell controller</li><li>Global API manager</li><li>Observability portal and components</li></ul>| <ul><li>Full HTTP(S) cells with local/global APIs</li><li>Full support for web cells</li><li>Inbuilt security for inter cell and intra cell communication</li><li>API management functionality</li><li>observability of cells with rich UIs</li></ul> |

### Local, existing Kubernetes cluster and GCP based installations

You could opt to install Cellery either in local mode, on to an existing Kubernetes cluster or on Google Cloud.
Note that you could combine either the basic or complete installations along with these options.

When you run `cellery setup` in interactive mode, and select `Create`, you can select one of the following options:

* `Local` -> to install locally via a pre-built VM
* `Existing cluster` -> to install into an existing K8s cluster (e.g. Docker for Desktop)
* `GCP` -> to install on Google Cloud

The following links explain in detail the setup options for different environments.

* [1. Local setup](docs/setup/local-setup.md)
* [2. Existing Cluster](docs/setup/existing-cluster.md)
* [3. GCP setup](docs/setup/gcp-setup.md)
2 changes: 1 addition & 1 deletion docs/setup/existing-cluster.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Existing kubernetes setup
Existing Kubernetes cluster
---
Cellery runtime can be installed onto an existing k8s clusters. Cellery runtime requires MySQL server to store the control plane state, and MySQL server can be started within kubernetes with persistent volume mounted or not.

Expand Down
189 changes: 189 additions & 0 deletions docs/writing-a-cell.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,189 @@
## Developing & running your first cell

In this section let's focus on initialize, build, run and push the same hello world cell explained above.
Follow the instructions listed below to create your first cell.

1. Execute `cellery init` command from the command prompt, and provide the project name as `hello-world-cell`.
```
$ cellery init
? Project name: [my-project] hello-world-cell
✔ Initialized project in directory: /Users/cellery/hello-world-cell
What's next?
--------------------------------------------------------
Execute the following command to build the image:
$ cellery build helloworld/helloworld.bal [repo/]organization/image_name:version
--------------------------------------------------------
```
2. The above step will auto generate a Cellery file in the location: hello-world-cell/hello-world-cell.bal with below content.
This file is implemented in [Ballerina](https://ballerina.io/) - A Cloud Native Programming Language.
The cell `helloCell` consists of one component defined as `helloComponent` and it has one web ingress with default
vhost `hello-world.com`.
An environment variable `HELLO_NAME`with default value `Cellery` is used by `helloComponent` to render the webpage.
By passing the parameters in the runtime, the vhost entry and the environment variable HELLO_NAME can be modified.

```ballerina
import ballerina/config;
import celleryio/cellery;

public function build(cellery:ImageName iName) returns error? {
// Hello Component
// This Components exposes the HTML hello world page
cellery:Component helloComponent = {
name: "hello",
source: {
image: "wso2cellery/samples-hello-world-webapp"
},
ingresses: {
webUI: <cellery:WebIngress>{ // Web ingress will be always exposed globally.
port: 80,
gatewayConfig: {
vhost: "hello-world.com",
context: "/"
}
}
},
envVars: {
HELLO_NAME: { value: "Cellery" }
}
};

// Cell Initialization
cellery:CellImage helloCell = {
components: {
helloComp: helloComponent
}
};
return cellery:createImage(helloCell, untaint iName);
}

public function run(cellery:ImageName iName, map<cellery:ImageName> instances) returns error? {
cellery:CellImage helloCell = check cellery:constructCellImage(untaint iName);
string vhostName = config:getAsString("VHOST_NAME");
if (vhostName !== "") {
cellery:WebIngress web = <cellery:WebIngress>helloCell.components.helloComp.ingresses.webUI;
web.gatewayConfig.vhost = vhostName;
}

string helloName = config:getAsString("HELLO_NAME");
if (helloName !== "") {
helloCell.components.helloComp.envVars.HELLO_NAME.value = helloName;
}
return cellery:createInstance(helloCell, iName, instances);
}
```

3. Build the Cellery image for hello world project by executing the `cellery build` command as shown below.
Note `DOCKER_HUB_ORG` is your organization name in docker hub.
```
$ cd hellow-world-cell
$ cellery build hello-world-cell.bal <DOCKER_HUB_ORG>/hello-world-cell:1.0.0
Hello World Cell Built successfully.

✔ Building image <DOCKER_HUB_ORG>/hello-world-cell:1.0.0
✔ Saving new Image to the Local Repository


✔ Successfully built cell image: <DOCKER_HUB_ORG>/hello-world-cell:1.0.0

What's next?
--------------------------------------------------------
Execute the following command to run the image:
$ cellery run <DOCKER_HUB_ORG>/helloworld:1.0.0
--------------------------------------------------------
```

4. Note that in the cell file's run method at step-2, it's looking for runtime parameters `VHOST_NAME` and `HELLO_NAME`,
and if it's available then it'll will be using those as vhost and greeting name.
Therefore run the built Cellery image with ‘cellery run’ command,
and pass `my-hello-world.com` for `VHOST_NAME`, and your name for `HELLO_NAME` as shown below.
Environment variables can be passed into the Cellery file as explained [here](https://github.com/wso2-cellery/spec).
```
$ cellery run <DOCKER_HUB_ORG>/hello-world-cell:1.0.0 -e VHOST_NAME=my-hello-world.com -e HELLO_NAME=WSO2 -n my-hello-world
✔ Extracting Cell Image <DOCKER_HUB_ORG/hello-world-cell:1.0.0

Main Instance: my-hello-world

✔ Reading Cell Image <DOCKER_HUB_ORG/hello-world-cell:1.0.0
✔ Validating environment variables
✔ Validating dependencies

Instances to be Used:

INSTANCE NAME CELL IMAGE USED INSTANCE SHARED
---------------- ----------------------------------------- --------------- --------
my-hello-world <DOCKER_HUB_ORG>/hello-world-cell:1.0.0 To be Created -

Dependency Tree to be Used:

No Dependencies

? Do you wish to continue with starting above Cell instances (Y/n)?

✔ Starting main instance my-hello-world


✔ Successfully deployed cell image: <DOCKER_HUB_ORG>/hello-world-cell:1.0.0

What's next?
--------------------------------------------------------
Execute the following command to list running cells:
$ cellery list instances
--------------------------------------------------------
```

5. Now your hello world cell is deployed, you can run the `cellery list instances` command to see the status of the deployed cell.
```
$ cellery list instances
INSTANCE CELL IMAGE STATUS GATEWAY COMPONENTS AGE
------------------------------------------ -------------------------------------------- -------- ----------------------------------------------------------- ------------ ----------------------
hello-world-cell-1-0-0-676b2131 sinthuja/hello-world-cell:1.0.0 Ready sinthuja-hello-world-cell-1-0-0-676b2131--gateway-service 1 10 minutes 1 seconds
```
6. Execute `cellery view` to see the components of your cell. This will open a HTML page in a browser and you can visualize the components and dependent cells of the cell image.
```
$ cellery view <DOCKER_HUB_ORG>/hello-world-cell:1.0.0
```
![hello world cell view](docs/images/hello-web-cell.png)

7. Access url [http://my-hello-world.com/](http://my-hello-world.com/) from browser. You will see updated web page with greeting
param you passed for HELLO_NAME in step-4.

8. As a final step, let's push your first cell project to your docker hub account. To perform this execute `cellery push`
as shown below.
```
$ cellery push <DOCKER_HUB_ORG>/hello-world-cell:1.0.0
✔ Connecting to registry-1.docker.io
✔ Reading image <DOCKER_HUB_ORG>/hello-world-cell:1.0.0 from the Local Repository
✔ Checking if the image <DOCKER_HUB_ORG>/hello-world-cell:1.0.0 already exists in the Registry
✔ Pushing image <DOCKER_HUB_ORG>/hello-world-cell:1.0.0

Image Digest : sha256:8935b3495a6c1cbc466ac28f4120c3836894e8ea1563fb5da7ecbd17e4b80df5

✔ Successfully pushed cell image: <DOCKER_HUB_ORG>/hello-world-cell:1.0.0

What's next?
--------------------------------------------------------
Execute the following command to pull the image:
$ cellery pull <DOCKER_HUB_ORG>/hello-world-cell:1.0.0
--------------------------------------------------------
```
Congratulations! You have successfully created your own cell, and completed getting started!

### Clean up
You can terminate the cells that are started during this guide.

1) List the cells that are running in the current setup by `cellery list instances`.
```
$ cellery list instances
INSTANCE CELL IMAGE STATUS GATEWAY COMPONENTS AGE
---------------- ----------------------------------- -------- --------------------------------- ------------ -----------------------
hello wso2cellery/hello-world-cell:0.2.1 Ready hello--gateway-service 1 1 hours 2 minutes
my-hello-world <ORGNAME>/hello-world-cell:1.0.0 Ready my-hello-world--gateway-service 1 27 minutes 42 seconds
```
2) Execute terminate command for each cell instances that you want to clean up as shown below.
```
$ cellery terminate hello
$ cellery terminate my-hello-world
```

0 comments on commit f5d1d08

Please sign in to comment.