From aed7ca68a09b9c9a8a7534bd6ee92016c8cf4f8d Mon Sep 17 00:00:00 2001 From: Troy McConaghy Date: Thu, 28 Feb 2019 12:18:53 +0100 Subject: [PATCH 1/4] Added the --squid-py-v0.4.2-compatible option and updated README.md accordingly --- README.md | 50 ++++++++++++++++++++-------------- Welcome_to_Ocean_Protocol.png | Bin 0 -> 40938 bytes start_ocean.sh | 10 ++++++- 3 files changed, 38 insertions(+), 22 deletions(-) create mode 100644 Welcome_to_Ocean_Protocol.png diff --git a/README.md b/README.md index b67a527..ebcca86 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ - [Prerequisites](#prerequisites) - [Get Started](#get-started) - - [Script Options](#script-options) + - [Script Options](#script-options) - [Docker Building Blocks](#docker-building-blocks) - [Pleuston](#pleuston) - [Aquarius](#aquarius) @@ -33,45 +33,49 @@ You need to have the newest versions of: * [Docker](https://www.docker.com/get-started) * [Docker Compose](https://docs.docker.com/compose/) -* Linux/MacOS. Currently Windows OS is not supported. - -**To run as a publisher:** `Brizo` configuration must be set with valid Azure account credentials. This is done in the file [`brizo.env`](./brizo.env). Follow our tutorial [Set up Azure Storage](https://docs.oceanprotocol.com/tutorials/azure-for-brizo/) to learn how to get those credentials. +* Linux or macOS. Currently Windows is not supported. +* If you want to use Azure Storage with Brizo (and you might not), then you must edit the file [`brizo.env`](./brizo.env) to have your Azure credentials. To learn how to get those credentials, see our tutorial to [Set up Azure Storage](https://docs.oceanprotocol.com/tutorials/azure-for-brizo/). ## Get Started -Bring up an instance of the whole Ocean Protocol network stack (connected to the Nile Testnet) with the `./start_ocean.sh` script: +It's overkill, but to be _sure_ that you use exactly the Docker images and volumes you want, you can start by pruning all the Docker things in your system: + +```bash +docker system prune --all --volumes +``` + +(An alternative would be to add the options `--purge` and `--force-pull` in your call to `./start_ocean.sh` below but that's not as sure as the above command.) + +If you're new to Barge, it's best to pin components (e.g. Aquarius, Brizo and Keeper Contracts) to a set of specific versions known to work with a specific version of squid-py, squid-js, etc. +For example, if you do: ```bash git clone git@github.com:oceanprotocol/barge.git cd barge - -./start_ocean.sh +./start_ocean.sh --squid-py-v0.4.2-compatible --no-pleuston --local-spree-node ``` -screen shot 2018-10-10 at 12 20 48 +then you'll freeze Aquarius, Brizo and Keeper Contracts at versions known to work with squid-py v0.4.2 (and Mantaray 0.4.0). The above command will also not run Pleuston (because squid-py users don't usually need to run Pleuston) and will run a local Spree node (explained more below). + +Welcome to Ocean Protocol --- -This will bring up the `stable` versions of all components, referring to their respective `master` branches. +If you want to use the latest versions of Aquarius, Brizo, Keeper Contracts and Pleuston (with the Docker image tag `latest`, based on the `develop` branches), then include `--latest` in the call to `start_ocean.sh`. You can pin one or all of the versions (to something other than `latest` by setting some environment variables explicitly (e.g. `KEEPER_VERSION=v0.6.12`). Read the `start_ocean.sh` code for details. -To get the `latest` versions of all components, referring to their `develop` branches, pass the argument `--latest`: +If you don't pin the versions of components (with an option like `--latest` or `--squid-py-v0.4.2-compatible`), then the default is to use the Docker images with Docker image tag `stable` (based on the `master` branches). You can pin one or all of the versions (to something other than `stable` by setting some environment variables explicitly (e.g. `KEEPER_VERSION=v0.6.12`). Read the `start_ocean.sh` code for details. -```bash -./start_ocean.sh --latest -``` +If you don't specify what kind of local node to run (e.g. using `--local-spree-node`) then the default is to run a local Nile node (i.e. `--local-nile-node`). -After getting everything running, you can open the **Pleuston Frontend** application in your browser: - -[http://localhost:3000](http://localhost:3000) - -### Script Options +## Script Options The `./start_ocean.sh` script provides the following options: Option | Description ----------------------------| ----------- -`--latest` | `latest` means to use the latest `develop` branches whereas `stable` means to use the last `stable` releases. -`--force-pull` | Force pulling the latest revision of the used docker images. +`--latest` | `latest` means to use the latest `develop` branches. +`--squid-py-v0.4.2-compatible` | Use versions of Aquarius, Brizo and Keeper Contracts known to be compatible with squid-py v0.4.2. +`--force-pull` | Force pulling the latest revision of the used Docker images. `--no-pleuston` | Start up Ocean without the `pleuston` Building Block. Helpful for development on `pleuston`. `--no-aquarius` | Start up Ocean without the `aquarius` Building Block. `--no-brizo` | Start up Ocean without the `brizo` Building Block. @@ -90,7 +94,11 @@ Ocean compose consists of a set of building blocks that can be combined to form ### Pleuston -By default it will start one container. This Building Block can be disabled by setting the `--no-pleuston` flag. +By default it will start one container. If Pleuston is running, you can open the **Pleuston Frontend** application in your browser: + +[http://localhost:3000](http://localhost:3000) + +This Building Block can be disabled by setting the `--no-pleuston` flag. Hostname | External Port | Internal Url | Local Url | Description -----------|---------------|-----------------------|-----------------------|-------------- diff --git a/Welcome_to_Ocean_Protocol.png b/Welcome_to_Ocean_Protocol.png new file mode 100644 index 0000000000000000000000000000000000000000..a4690f8238a22e6cd23883d102f7ff40c19e4d89 GIT binary patch literal 40938 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%0AA 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 z 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 G_}>9BzmdKG literal 0 HcmV?d00001 diff --git a/start_ocean.sh b/start_ocean.sh index 5292127..3e16d77 100755 --- a/start_ocean.sh +++ b/start_ocean.sh @@ -92,9 +92,17 @@ while :; do export PLEUSTON_VERSION=${PLEUSTON_VERSION:-latest} printf $COLOR_Y'Switched to latest components...\n\n'$COLOR_RESET ;; + --squid-py-v0.4.2-compatible) + export AQUARIUS_VERSION=v0.1.8 + export BRIZO_VERSION=v0.2.0 + export KEEPER_VERSION=v0.6.12 + printf $COLOR_Y'Using components compatible with squid-py v0.4.2:\n\n'$COLOR_RESET + printf $COLOR_Y'- Compatible with Mantaray v0.4.0\n\n'$COLOR_RESET + printf $COLOR_Y'- Not used with Pleuston: do --no-pleuston\n\n'$COLOR_RESET + ;; --force-pull) export FORCEPULL="true" - printf $COLOR_Y'Pulling latest components...\n\n'$COLOR_RESET + printf $COLOR_Y'Pulling the latest revision of the used Docker images...\n\n'$COLOR_RESET ;; ################################################# # Exclude switches From 366ae586404e12adfe522e028d60903c3dd2280c Mon Sep 17 00:00:00 2001 From: Troy McConaghy Date: Thu, 28 Feb 2019 16:49:30 +0100 Subject: [PATCH 2/4] Removed new option, changed default vers, added --stable --- README.md | 47 +++++++++++++++++------------ Welcome_to_Ocean_Protocol.png | Bin 40938 -> 26308 bytes compose-files/aquarius.yml | 2 +- compose-files/brizo.yml | 2 +- compose-files/keeper_contracts.yml | 2 +- compose-files/pleuston.yml | 2 +- start_ocean.sh | 19 +++++++----- 7 files changed, 44 insertions(+), 30 deletions(-) diff --git a/README.md b/README.md index ebcca86..2836ce8 100644 --- a/README.md +++ b/README.md @@ -44,38 +44,46 @@ It's overkill, but to be _sure_ that you use exactly the Docker images and volum docker system prune --all --volumes ``` -(An alternative would be to add the options `--purge` and `--force-pull` in your call to `./start_ocean.sh` below but that's not as sure as the above command.) +(An alternative would be to add the options `--purge` and `--force-pull` in your call to the `start_ocean.sh` script below but that's not as sure as the above command.) -If you're new to Barge, it's best to pin components (e.g. Aquarius, Brizo and Keeper Contracts) to a set of specific versions known to work with a specific version of squid-py, squid-js, etc. -For example, if you do: +If you're new to Barge, it's best to do something like: ```bash git clone git@github.com:oceanprotocol/barge.git cd barge -./start_ocean.sh --squid-py-v0.4.2-compatible --no-pleuston --local-spree-node + +./start_ocean.sh --local-spree-node ``` -then you'll freeze Aquarius, Brizo and Keeper Contracts at versions known to work with squid-py v0.4.2 (and Mantaray 0.4.0). The above command will also not run Pleuston (because squid-py users don't usually need to run Pleuston) and will run a local Spree node (explained more below). +with no `--latest` or `--stable` option. That will run the current default versions of Aquarius, Brizo and Keeper Contracts (listed in the table below). It will also run the _latest_ version of Pleuston and a local Spree node (explained more below). If you don't specify what kind of local node to run (e.g. using `--local-spree-node`) then the default is to run a local Nile node (i.e. `--local-nile-node`). Welcome to Ocean Protocol ---- - -If you want to use the latest versions of Aquarius, Brizo, Keeper Contracts and Pleuston (with the Docker image tag `latest`, based on the `develop` branches), then include `--latest` in the call to `start_ocean.sh`. You can pin one or all of the versions (to something other than `latest` by setting some environment variables explicitly (e.g. `KEEPER_VERSION=v0.6.12`). Read the `start_ocean.sh` code for details. - -If you don't pin the versions of components (with an option like `--latest` or `--squid-py-v0.4.2-compatible`), then the default is to use the Docker images with Docker image tag `stable` (based on the `master` branches). You can pin one or all of the versions (to something other than `stable` by setting some environment variables explicitly (e.g. `KEEPER_VERSION=v0.6.12`). Read the `start_ocean.sh` code for details. - -If you don't specify what kind of local node to run (e.g. using `--local-spree-node`) then the default is to run a local Nile node (i.e. `--local-nile-node`). - ## Script Options -The `./start_ocean.sh` script provides the following options: +Options that set the versions (Docker image tags) of Aquarius, Brizo, Keeper Contracts and Pleuston: + +Option | Aquarius | Brizo | Keeper | Pleuston | Notes +------------|-----------|----------|----------|----------|------- +`--latest` | `latest` | `latest` | `latest` | `latest` | +`--stable` | `stable` | `stable` | `stable` | `stable` | +(Default) | `v0.1.10` | `v0.2.2` | `v0.6.12`| `latest` | Works with squid-py v0.4.2. Pleuston & squid-js not working yet. + +Note: The `latest` Docker image tag derives from the `develop` branch of the component's Git repo and the `stable` Docker image tag derives from the `master` branch. + +You can override the Docker image tag used for a particular component by setting its associated environment variable (`AQUARIUS_VERSION`, `BRIZO_VERSION`, `KEEPER_VERSION` or `PLEUSTON_VERSION`) before calling `start_ocean.sh`. For example: + +```bash +export BRIZO_VERSION=v0.2.1 +./start_ocean.sh --local-spree-node +``` + +will use the default Docker image tags for Aquarius, Keeper Contracts and Pleuston, but `v0.2.1` for Brizo. + +Other `start_ocean.sh` options: Option | Description ----------------------------| ----------- -`--latest` | `latest` means to use the latest `develop` branches. -`--squid-py-v0.4.2-compatible` | Use versions of Aquarius, Brizo and Keeper Contracts known to be compatible with squid-py v0.4.2. -`--force-pull` | Force pulling the latest revision of the used Docker images. `--no-pleuston` | Start up Ocean without the `pleuston` Building Block. Helpful for development on `pleuston`. `--no-aquarius` | Start up Ocean without the `aquarius` Building Block. `--no-brizo` | Start up Ocean without the `brizo` Building Block. @@ -86,11 +94,12 @@ Option | Description `--local-kovan-node` | Runs a light node of the `kovan` network and connects the node to the `kovan` network. `--reuse-ganache-database` | Configures a running `ganache` node to use a persistent database. `--acl-contract` | Configures secret-store `acl_contract` option to enable secret-store authorization. -`--purge` | Removes the containers, volumes, artifact folder and networks used by the script. +`--force-pull` | Force pulling the latest revision of the used Docker images. +`--purge` | Removes the Docker containers, volumes, artifact folder and networks used by the script. ## Docker Building Blocks -Ocean compose consists of a set of building blocks that can be combined to form a local test environment. By default all building blocks will be started with the `./start_ocean.sh` script. +Barge consists of a set of building blocks that can be combined to form a local test environment. By default all building blocks will be started by the `start_ocean.sh` script. ### Pleuston diff --git a/Welcome_to_Ocean_Protocol.png b/Welcome_to_Ocean_Protocol.png index a4690f8238a22e6cd23883d102f7ff40c19e4d89..e84efd63c8a0246beb0428531e82ee04d29682bd 100644 GIT binary patch literal 26308 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�!FZjX!7MT#K3C?G}YC^ZCWD*aIuM0$}T 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 literal 40938 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%0AA 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 z zlPcD{FFw;-c^m*%6ElK`@Hgl^`MnV1Cly8+nkRwyno>qvKBd{tw7X-v^1-d|pdatI zwlfS6guw+-Vayfwh9eo)Q&0)Hs>*bNU;L%se2{JSzm~Gf$GX)pck+j&oSk?n`%IMX zSI^~?bDG?p(>PzqesYyAR#yagFb2BJp>Zw#;~`0_-vnn{kLw+49s{p;;05$|FPzCR zmHbn-d?1IOb%PnlUa>AtXXha4x#K!p7WV=9){b)Fx;8RD9Noi>%{-Kq0{ex^b<)k# zuc{G8o(#f~vjQQ0>aFhNBhs0sLPc+6k8ua5nL|?})Q?)q1ERd&Z7qko=DZk~g2DYs za9UUA*e6yKrTp(ODy)oA-+I-VefLgfw!SrDoyX}m7GTtUcnWbM=K)O0t$Q0vt0ej6 zN;u?*HbBY=C!|{26T+0?Wv!|Qs6yfNc|y;o-@C)0#%nSZtr(`F zCAEP>m+WQfh}uC=2d>}C7`Am|UQ7V7-ws)uN!(_>7lQe!R_{xMqb=+zovw{nY5?gx zSag=)uC;AdQi- zfY0M`KYDU0smn(&;Y`hfV7UBX!w|^|s4=NSvXS@n)ww?36@vzQyGhp=qnW;&l6dcX zA6=v+l^%?DLi+VtsjVqyBt$#Rq@!>ZCz$v8lfmnY&ujh3>ZYp1tW&Z!Fm(JJB?uoD z+7IV-uT&r7BKsM$^?c-T@ z(O2yls>2omk90HLR;nDZjZst{>nWX66AMV^Ey}F3pQkt7W>5@vBE31Z9b_5qFCpHR z$w?q)i{Ux|5hDTj^y9ELo%npPq}y&oFUOj+N-15O8WToB(b2&;YN6uKzPcjy+P2uV zDYx12A@~Yp^E2^^AK&qjsDkL9GB6_Tbd|UHjaW7@D{&72y8X#jWPD|xz0)Z@>6&Vy zD;}8~4X#aU56H&c4}3dwYo6_#6Xv_tUnB`)UWmc64H*H9?^Gqq?;dhih^g@}`H8kF zMDBkOvThL3nXLLS^i`Q-*1__;4~)idhSb!ZPFg+Hf|bJW3G8Gu0V}OcPzgq9qK^qN zdUJKhQU@O|GRc~@uzv)z&#tQN0zg4s7 zhyOdovm7Dr@QyzT9ZkguFu(F)U66fpWo1GXg8Rx-p!4n?KL@PjGyzBy}Eak$V*8h{y58*rb-0bfx%xAvm~Qx2Mn)p}h@YHMuf`BG zNnYpJOeqdKhpBtrt0*OO40(<(t|uE+TE;EB2rtzrmBh0f6m|=c{@k)AIsWsbEwaX8 zYgVjduXu|ynak2KKD}7%qt=9|ww79&q%;wx4sM>Bu%_4NzCB9%-ICT}0=Kg<;$j`T zjSxSk{Uz)Z-~`2W8FTAeqPrVF-hZ5LMl2;qY(_js`|lgExQxX%cG$Nn8(sX<=Ph@#ZBP4F6WPVsDIN{Plw>!eS*$)NBhqVJGf<*RDz}Yn@!2>2-}&g~4N* z^~cWw9FO_If+tLqLx3H6=@oY~G|?thVyg*zt^tdZ3$>Q{?FG?{kD_9{vda&H>|J;5t{KlE8TX@~v0HB-u`F{y?r0;faor&+) zN2RD7gE=4EU;)64)va%NgrbX58Y}%50oqbj^>#eK)&_=I9`# zMDPRp{tKQi<&Aesz#ay~wYb^g*10KIw)*s?EEJpg&Kbi^D465j!lk7^iL+W``v!-l zy|9k6%956=ye|&HMmG`>jf;CqT2gOkkYAX9G6$>ROmB4<1QWXSj!raJp!1Lx=H}Hh z%Nw^{t=)5iB-cfZy}Hu%P0@pDtOoHtdo$Q*edx1S;~1oPj3y^;TwqD$oHh>#k!^2J zHUoH9hmK2sIJb$~k%y8-`$*!uU9$4GKDXI>d2jTN$nQ(D1EKC{FITgqYaw8DS5MAX z#a{2Sp)bYy^ZHcJNfhOpxVsU`Iyav1h2O(9Pc6RPnlpC{nr%OaPy=y0aaZp@d>ymO zNvti@<8(0LR(kmcTAl2ww=ZnW$w0vFS{}!`&?1W0UhBU=IQ+n`(?9Kj5`M%L7sl86 z=qe!2XuZ`g3SZ*Q5_m5OYTPY%URzBc7ZO+GYXVJ;Sw6#xzGwqti&X3FhJ~GsJUik| zu5ZfAC$x3e+_QhvTT$>2>Ax1p1Kys%yWWrk)0zFY)X$cldEh0JsTnCD#6=OS_megh2Si&j(s+zV5r#L zEWxZ0RP8LL@skrpa9L9s56!Ums-3h~mig~hBT@k{*RhaF#ZVTvKC77>?XbYK2sr0k zsg2#N?b(9S9m=)!xdW74KD3^OVc^5X!5kM>4dLTQp1Lpr(f?kyi+gZJ>0p#oU!~I` z6tx-Jy`kmzH~ctkBRn1AZ`El3DgxY~c9xp0V&V(n6Lto(I>id-vV1Qau5m79`DrX0 zpHc(CMYxY8A?tdN(-(3&m|u;cq!KP6YHJ&jxzX)Td>0KEH55JKL&lK~jVWsNUzJIs z0&$aA7|B?@U3Z%lKi6guobL#ppqdl^U^m8_QHx8Apxc2-v1l0mbMvz}^cz(rawH+q zKsz3C^2ZsoyR<_7X_$YFr15An(*IjfOn(LgJRp2mXg;Dx>5%oJAY%2!T zR+^GHP=$2m;k@D9YGS*{ZZM9;53J18b=tkw71SO9U;^5$Yi!kLD1 ztmScb(X3UAR&PPnG_Kxo{dXJP8E&Z;cO)FC8aJo77Jq5uYYKIK1eOIa2U=BKxD?)t zh4r}a#+T2U1tkKoQ7QS+h8$|(}Ec|*`bvqQ8Kb5BB! zv~%kr`1vPJ&4s7DtUa-AQFvp0|C<-MXqf+`Sys#PC25G*ZDCrPi_8!G5>>Nj@sW# zas{LGq*PN*YDY`+DdH!v!K&eFG}&8zPv;y2j) z?M_A0*a)aWs5*9DJU-pj>iMJfw-AE7R1c)y9wGHD1Y>+ZvsZtc_~BLS6nZ7Kr%g1^pb)#FFQH;;x* zWL0T+{Z6#M)(0LoIa;H6m;2G~P@1kO479iR{o=9w-2atUGl$Txp5yzX5tQo_v#bsr z`@5G?8HP~_gB8ubG>?bpsfpy`hzc*xewz-CKop{$Bvy@o#3*w8(}DG6RfXO5`+d{b zWr^xU0~c@*2)uUg@Fr-P8=o|yRHTi?4dMfzHp!O!j4i#E=iG2x-Y);q{@C{xizxgT zi`%cy1#^;ZD9Lsd5%V+UgT_~L?R~&RX^YsKOvlfm?@)a@qj|q%?19kbCYV>cW~7+f zDzxh;>m*~Od@s0fG0E=}9OwivhS}*g+X}Rf4g*gv73NcnF6z)j(SmM|-A5b6Nmn)` zC%guDHzpl$j_t8Br*r;lJ5;eGaO~dNn_TN?unf4q8m-NpDzHYLEq^6b%l5Thk*cg_ z4=o>%^4$i?e-EuAXfw2*P@e48NfTq!h1yD_1H2NWa5!#dN~c3^xfVXCjvi6mik)_= zVudq1@UfM8zZjgBQtOwezD+o+S-=rEzo|OD1Hum7o)~_xVOSSKPA;S}Zp}ClNKb|& z>I8lS!`E%)Yyg7pIbSogQRuzL8>I3QxpS_c7&P$_oEd2#^U&T1p;G%dZYNAi~(P7${ zqNSPW;=EcPgj4X!>~;1xHosi~zb5xs@V1IrN~_q#?p@P4*Eb`FL$Zs-9IlSIY@WrV zZPjXwb&+m#kWWi*(pq;0L|e4_cG=v3sDW0kFO#kWwM8EDntiJ`MFhh2v;pU=moh6! zaa_rLCF0#Hmm%2kAJ1kYWB7K;3Kx_6+7C5uZ^gf~mj!d)Grs1wSpvB`l}T(i*WgE& zgqhBlRCYdXsDj`x3-BO;vK$VcU$u5%7j^3ovgCryVS)G01QylJnB>x_1oX{BF3?=1 z*R|8lMrnOIws2?@VZE;LPMCMhId-V+!7vsTqufm2u3cERCUaDfaeL8F_JHd(YU)yFksReuBK$7z*qv9tES(st zPXA6)>GS2gDY1O5=5yN%M^u>H7lZQN(ksZT=5uHcBhDGn4P)Lb*N65qg)#xs;st|a zjw#Olr6Y;Y^^)E#R8GG^S>`mF5a8|FEWVjHnQ$huc#u1nDC&XVg;^*mw7o!`BfI5`Q69;P?1Gd_S3tUqM;H;r(UeNF#~_rj>8 z8D#hNj$bAd^=oGp4R$p8FT|O+El>5sS1sJD`CFu~3OWCZ9{YcSdrj`_MHu-P9QYN! z!tJ~Lb05HNI(n%W*57pa_Au^0b^`pLn0mvl82-*7vB94Gkf51hBIHiitey5|^^ zS+BtTKvUrH6}Yz?Ha(BbkQ=k~k1?{K2K@BS5txp36CxNkF+M9Hf~Vf5A{E^n6$RE% zglM1U?ZTCXP>?Z7RMI4!@)MC;FJelgIUF8e#d}EJjfLqDg0t$zkZ2^tAK}VMxiSa2 zFiDRitf&4+U!Sr!Ue-J7EXRRkwyEp?nV&(g>MW1#YwHw^LJL!CTkd|#WVmv5rBOb3 zxC$IhLaWL>%}FPayd7eMODkTuIi(z{u9&ffb}{o^9JY_E$)7yvkg1PHLOm?#*|Hw( zuvgZ)op5gCl8dSg;Wq=NydIu_&i(g83LJ6R4OKvW9E?z_G*pt)vSA3?;Ugs=sugi( zb!lW2W{7!$F3N)IwY^(O24Pit@eJ#3i#?$ztZiXR5fS2 zv_D#)-+93^2(F&S0^>FfG8s<_95}$-NG#aKac0sP=ooMy(FS7X&`N(vUFkPrJ1DgT ztWEWnC0)zKA8t&-(+Byr*3(4Qd5q31c`-x@f1O&P8n2}?*B#8+856VCj_!k0plWUH z%h`$ZqtW>`WYTUo@ldt2MnKW#(A`_Z3vTfB9$Yu8sw{Em$NVx60ON6nu0{DSLo+A% z$BbEkt!j7y=c+#43uuZ$OD@pxWe)te{tb)7y1!?2$>fYT7G@iG=6{QNL+{J0wpcNy zp1uOK^40Dj9zLzV)FvW1H;^veQiQb(EXIp^SjSuJE)lxd`xoe(XZfspU@GE(2kf;m zL^W&Pzxw1TA9SZi$Xs~&9_l{p49mop@w3(a6)B{d^Y#}yo@3~;Cvy7V{`vc#Z#)hO z^S#>wkn$H>o6X*_zWsf%5T3HwHHE}3UGcuig*$Mick#G%*4FcYLZH0ge7#=g9|X%# z?LQH$8OFf>ES4C%2p?J$N>AQ#39D3U8x-q^}-HHry>Vf!BF6Xxq-B*jFmq zh9nVw_-ofbrIGv{(01Y9fFYvU$JN=vHIpo&e{*`p66tE&Vut$<57gYStI6;q8TvI%loC{ylfb~!p2J{KNwjzXHmnAI#`VuF9t97d5DZ3oV+9owG|dZo91ZEO=CnUvww?pA-q`jokB4qt>+U zNhDMJYW#3CuQPIj{b!;G;2?&L<**Nt@)Bq**J>+l9YG4LA`7C+<3V;*B0PtZ8kpkq zSg-|NnN!Dh4$~5Wh{cH9s5*}tYuY2ank?_>~W8%AsK5KH}Z=4+5nOY94hn#aiFDk9{7T)j5)7XAF6H{o@CuZ4A*WzGFa zGu~j;BGSn4AA2`5OXZ#LV>{LL@DJwxq!79z1b+PdbZ|s5mNQ!b7UU2CD&Ute7)v8M z%pw=K%q%QSdB(l!R#F#KAyR9rsQo}*EqZa{ZqPiuJ50Z;f@vpqZiWbVZwg1Ay zyL@N`9H7vTgd-I4nNJ#9*i&3Z8`9wOMnIgrHWN^Zbri;Ne7Rfedn9}3jIby}tj7&Z zEOc9R{&&YO{r-vC&;He?G%e2{+8urQ@EO&j{>Wl;Eo?LWDkE;W>|e2wEr%s$LaYDk zRc=F!dpH;)!?>bUGKpD@fGgp%N(?@uxSYU?7n{?QoSfoQ&!~=@41U%WM2ridKdw*Oq5z%RM}fsw|w+r-@ZHqrmkVEgH+y8q^oI zrNL^bXrwfMef%jBtrt7kBgMj+LLQgWcJoB`_Ai44KOw@W);Zt0A6_-y>+3dNBd2j~ zH&RPY^&c6~;BUKhFIp=4hVh4YU*-||Z0C2 zdj3lER(;E7+&1hW4&~}AEEz5clgJA}$*mK4KT6GVlSj7S@@@{RM(_2U&kHorZ@fB% zr6s*&*y=Ia5e#?qpvgWQwc;N%2$G$%_iptQRi(IHkpg8|OyHqZS$q4h+QBioK`QF_ zqC=}pRnmBI7LwITLQK&a>$lHCx9+)s15w%p2GiCUS_^eW$zx&Ft+TdUEhNaOf|`S= z%^W*k^#QT~Pd3YPgXKse80!q7dxbeJ9-)?M7ptMcNONAmqB;o*sMysG=dw{}$E`7A z`mJzz72jMjPGsgi|J(B9w;l&i1?c!~rB(Xncb?26?7M{h+C+vj0mAuh!DSs~27SD1 zI?w1jL8R};8oAgu;cj6`!9R(^301veOp=PTB;ipzI5Dh0Kn=^vH9bHDtvON-EJcgBDG_>ZF4@Bi7=?cdM*M+*SzzZ>rTe{rIM zDRPh%V!v z`m~;*%SF&wkQzkT(sMhEp~d{|=K0&$&88bCDRuif436(s?Glv)P1m_k?rR^V7r;i>bf&&>K;n+KQ72ib@ zhbpD5<0IZLnAHB++|1j#amZ+M9lydwowl*s-jUtLMR)Atkf?v>=H!4^@~k5=^qy0D z#8B{~g3*$eyG6W3kT-4t)bCm=I2ahOzQN)wgru8+#8_6k72=0&ZAXGZ!J9j6($bp! ztwF^>*ASH#|BFL?*m>b63$IhH&|wFEf}z`ei2gkt=l~WAbT^A{?lgVA+J6&i_}K>a zcMRF2OZ_1hdJGyVQV-xUm+mBk=GnpXyi*L{=*7ZM-rZ-u~3gbdZRTG_ePNfoP@jHBZeeHuuavf9Gw>Z|B_+^o92J3z> zL5aEB2De~jQ2Wu((2AGB2&DUQjF?rOo(3;vDd)2RWDruhjp1aiK=H8Uk3=CF{H;4> ztkOkeBHkYT9WHO3v_lhTMb(`j{o-`^8_-$h(#69bekf+MR%5A8MPeeXO;_Y6ir4qb zu!=`6vHR?*$Iat%#rY$MAxm1u6^WzFHvydx~Y}BX_a3pX+5&@nvHHVkbq^w^Xug&{o^xDA+7=+ zMxE6B>y$SUW7H&TjI=CiH6ZG8#sTtCv#Iq zwB-4AlwQOgu~&v#ni9Ci+)N~a7Sw!bR?-4hgI#a0uyTRM?^pt9AOL@!zy3@GA+GoVJGA$NA9g@t)6XdM0BkAa< z_YDDXVQ55j?JX$-&JdAtPLq&V(k9v*7RPWM)ANN0hQV*vcwS@kP_;}+u*P6K6s|%c zGoVj+hPEUpmFg_I(EebwoDkGb7#FF6f$TR!&G3!uoYeUQHRk;_JC9ToXTPYTRfYvj zNFvp(rbc8waMpq0Y+DgF zRq9FhqZ_i&Iv0o5W5asj`wk|!GgZ$lH3Lz{&dCi6aHu)DgK$5(EqAI{3coG2Lji79 zTmNc^pV+Jl{279>&-9>+cCMoO(m}M~qGeM+*b)QgL#sn=dryy!UiD^W?F#{M5hS3P zSinv+mfM9GFuAEf?A93m)ZrbWAxnT^) z+tl0WA&k?1%?Gurc;QcH-?O@j`)EQ-+lZyN~_2&tBJ!dnY&HxWr zn}w--vTa5kn{nnf<8AwPQPrmEwi>yv{R3h}l3`%XRh5d@{dd~Hw?_19D;j-_stEkL z1{V>7OdNYm2I_EvnjCus`C*G0IWwJxrpyaZx>&83b-3%d`kXc=G&^}#==I0v(;zVE zm0QYg99=2K{O01b_g7K{s?sjq%ld$YN2A~}0!83H?=c;SWM>U3WJAy#V|Yy@pQsY3 z2Ajvfu1&`6GoCN*pa9&Z3JB3pV)G@dyR_Stprdc4$2dFXNry75W9?!cMUpNtzvVSdxN zal3c{!q2ec@$$DGBR_eQ-(UyTAmzIs*Pqi)2K47?0}p5sv59D)^Jod@V#GpEmt(x? zm8ha3y>W4CD|#;eZf%G|#Wi4W6|uQ5VZv07u?Tnf$+qQ^(}^r|){K9$nLD%L-fp?s zND<%j3}rDQi7ik7@mqpc@v~+}nY~&)Q$ezV4Yc1KR3k$i6s3T)-GL}%t`=IMhhxK2 zifW#t2`|UNDQ zQ3u7}rpt0ZeP5E`$o4+*WtWpd@O5`Thuw#u-cL`R9Cj3OXWA_atgR_`>yqG&zC6ft zj~eneZH6A5Tj&Q@d8F?0B}o0MzP%@p3;KEAGb<*NJE4ZlF`eYd#Di_%9VZ$Ekz;2c ztc%Oq9Q@)}VaZkXM!Jn-de`MF5RcS&Y33fza)G$h?vahH`*N5kWm>HpL(bzHm}cW5wXry_lFTpW zF@$qPL7-ff7e2mrd2?YDjyE1fisRz7SU97MpDM>~R7Kz4;Src={M^UaRuoskXsWMX z9-j1v>Ao6OfW6-UHXbI?_(niyU0LLW713IK57Ok0RKO)%)Wv)6T5+}A$8Kg_&t&pV z-L@%;pC1+L-9jzv?>MTRq7KSN6P}8T@EC1)!!mxCtFOyA@7bPiQL=HN_nYJ~Z!g`1JE$Zg_~+Yd zCM`>_{)IAgd3iNr3cU95+v`&NzR)X5%f>c+6#;}uurAh2>hT7I)QSW13a#1=@onyhRJwc^bJ zOOlko28%QF56D2PAvYn#EACqOiF$anKyMzrDeQH$^av#QU^)%7bL690-n+Yx?$gonR}NIXm6LZTu}QsRL&27h7$l99BzIfG>nUz z)CM1yQ6AN1WQ1)R*xG8p9}f>U)05;p^gjDe{}K>AxsBzMqwP1)U_A1#ag%J>AAf;p9$D zZ>$jEa=3;A9C%YEh;}xo?YsSC6-jrk6H;POxP$!M~X(CzFCCe^Tdl~$>Pwy!Jl7w_Uez23sL2@9j= zdzxycKr8zkOFF9HiLF-vZkVy^$Q<=V^)trIVZThioS&>MEzg~=+~hUtbl8pI+7sPL zyWNtsC9Ydp0h%jd|3TFK%S8qo)4{UYmHFhJNce%YV*|eX&Y7d+UJ#t#_Rq`o(I4>0 zn*0GR8KNRarr3d_w-V|r{K}8J_gg*@uUg?eeBH&>MT!TgvAOkS*lnGApw-95$*LUM z(t#EO7ydI<^CX11ZHZ#rue_erxwK60Zte|ULq{9>7?Xv*uOx*@A$3EDzxGOa6sOAU zMW=%oA)4o+4#PKG4jirZ{y%1(N=b|Ubbd-~y|5A*wVGib=fIv3yXRJ}`SGLt@{xe> zC^fdu;gS-yn)x7)A!^4aTXi^Hdiq_Dj^Jqg$KQH5x_5Trm%@g3Jf|q48&@S-x6< z-+m2s%yg}#COtd8->iW57RD;qbAMmFpc1#4qVAVV7(8HGMZ=8zJb?E52SXn85tDfu=VP9CX_#jy|$9*)W4Xba?wWQRZ*=vh(?UDP6RR!&S)gD6IYy4{=dM_ zFqIn4*X?xS_VaYEZpK)&ApH?R$I9Ci0I48J59I3U#xANgH^OE;rhkz)*5p}Dgw0GZ z!HC+tAu>>a(ZW#8Reij1M(Rl4asDUqvv9JtZscGMuiC{G;FlLiD)iw2>@-vtI(*wF zf6_FyahH%#YRwcPC1E>_B5yrDbAAe<*OIk*o%LyV0VvFP0rJeKf#Y8 zviR1IN6ROI_r^WTc~U8pL%oRH;c(AFjE)r2uP3d0R-^O@>qbh5mmmfT9bhJXPIE=) zbqN~y>j9rAe}w?@r-);`?k`wb+C^!g4iE)H<|_MIe|$uu>RHp{cGKVJT0H7)b8hcE02vU= zPZ6Y*geW>aT6?~v1hhRos`iY(#$Ex~DX-Nt^1vzu{N=akLi&%Z8xsxLLLC z7W0?xdRdD{uU6n(jc>NUdCU|m2W0|QLFlpKNbWav=JAeIw$_RK-h4rVHU!Bx{{^Ar zaXWz``QQb&-LKDp--f3~+Gch(LN%VxZl2xNADX+ix!c6&Ta)adiZ#Ilw*NC&N6`Ck zz`8e&gCh2E8xz3a&j-yxDzGZCufFa1#u3BDrX^E}OHw_iCphYAgLU%{%&Hz>FA|G= zY;v1{&S{K3+_@L~Y=<(>_aJtoV4~hCC%8A|3o+4c>)RS;nYkw=A7%-s4SoH+K}^V}*u4UrBt2x$@k(*(_YkM{5CLo2x;> zCGO|DeH)oc-%+%=m=7U=?u__++RYo?=h5ef9N*c$F&qdq`G1-_^KYpCJ&sqTd~IL) zmaIcWB73%BC?Q!UB-_{;GiYpM8OFZckS$4;h{&2POH7t56GLO{Tb2eR!dM3(%l&*i z=iYn1=li|qp8Lx^_x%^V&w2gudc2;`*HVRKe>&(p(Cb_YZfpEP&uQwoA@@xSf=X-` z{7t1RA}~l_X*7Q^9bodc<~sTVj+&C<7o0iZm7V`R~`(6`}~ zyzkdEB}FZg75h<5D}wsn1jgAtfR)zhMW5NZTU}Vm#u)))jeDip7fOBQ{}a&b(^M}< zVLhfhOyr0|V#=QGXPj$WSC|J9Lx}~2VgZ7ln=IEV-fgUIXO{a~_Y!S1tiv^y0h6jfezmUu}s>mfpHGxIb3dY1s94$i_>ah?Oh z=xh!WxKA!wuIp9(NLjoqoESu1L>CFP6udl{c}oWBzBISYWNDrvPRYL#_n|Zb8echf zK$|^kc`p87YDqd(0=1Cg`@J$46+NFER?!K;WCo6O+}-x$g7PnaR+Q;VDuM01p}E^@SM7Z#tukh2{jnc@FBD{2 z)o50@!7GTt;8+)Wb852)XB-sRvfNh3&|AtLLr~%=OlsP;Z+@C0|sR zSv#)&lZXSi_q#J=)enCYAIW|@vlD5tH+K7yVjga#oL;-4J;&g=OVDY5UUeS+GQmLj z887!(Pxx5-s+_Jb!{fO(T4>7?&Aa8DpnpGmFZqO z`AyG4zVU7=vEfu6&5}oRn1WEkmM&!CaV7BXVvo)m&dTjN)6%i$y=pf^+#wdk!wuF8 z*6Gt;a<1V(6Qcab`a^aMf#r#7WNhjJaW1}jWK-j6N3I2W6=nxV1_|eCHI6;tb)~#V z{(6mJmQr$DgDSQ5MGdlp=_XPHwqAuVI{O@ow6>J+_U;z4giDB%jJF&8u%thO?VgO-d z`~P1FANZW{ubWKQT6rl_OGs+8+&zP=pz{WgH=07!KGrQbt~aq=ejFX$`5C@_{PHV> zi6Vh(jOrJ%rq*cDS|4N`c`1V_1n!J?x^Bl0U%XUj?C(Ql_O~@|oiFM%=Bn+AuL3rq z#NGG)h0Y7N4)QPJJ84Z4tUWSQK7Ka{U3D3`eCg7rpnVu|?DVxjtYl+NRg5UBC9XY4 zKaHAbn7y(YnKEff3W`^zI)!$BmiXv_Tdy|yph_Z;vx{b+Wp}|sJp)pT=deWy>W#?R zEYdzuO+o16V)5`PK=fjsL%;n3TEXighA`)XF{en$Tqc9ePo=<7YJ=vTK`{`3d&)+9* zu*Wj^VSUb{cJ@^tvAmXTJ>GBTb2z$3pvx#bB3x8PhEQCOqMG9ZLR6A4oGtm(Mq#E3 zJ@m}3#O2`5yaTGO8A)@QPKnM3nl{)vn?4m+QiY$l1-0U3ijcCA0`vJPZ zF7GON7$`?GRFO}8p{tgeAvV)*8?`9wBGU7?dOhKO{VES>U*SYlm)`41pUYHp>-IOA zBDd--Hrs_wP}U>VZH31wA!$0)u>bE6z<(N#8k4ISPs6Orpk65V_nX{{`4mNB(CX(f~qlr z$y6?;TS;|B4DR zU30&E7j6hOO0kED@%p_|>)z{A|TX znhNSENT`=I+JbJ8X5dHEr-jla1=~vQ6|xbk#9~kI5suW1krdw`VPlOVb$#6GT}Hxb zLT?IrXx(LSV`Vb)GYDfCkOjT?dw9c?7Z+;A`0Q=m!>g7gj#|l`+z#loj|?{jY(eLG ze4NLPJH}VE~P^}?+1h=cR9+HGzl~nT~sCQp>3dZ(0 zz5}n;tI?Gw99sdE#YPXw0cjjCc~T$Q%LVD4c?}obQMA}nVl_2+1_Lv4XEDp}rm%}% zcvU=#+&^IbBCVOHpJ5pi$}&Nxl#m^%ofd2%>cy?+SB-BuyKRJQLXkDOtNslwMT|4I zx`J9G&A{)2&`gTpe5zB_Ctb0QJ%Qk*C=l4tg&yjzw?52cY4Jjw@;t0gHN-!rE4G=p z|F|ay#=d+%>b-*nnB3U#WZOzpzK}UkOW{9Dl6GkeTz^&^M{>V9+BLCDJQ6X=>DlT4RN~!hmk;!|l(Z7E4wA9)!i5P<~fmJC#D0~w2vaJiqaeC{B9;axZ zA41dw9_dLMb+;JU2@}Khw(v{H=3B*|A^t)~neC&Wnv;$;%9_qN9=frl2;UpV96l5Q zY;m@j!KR{h!5LYMc2YeowDxadMwwsR-oMoU#!B;OItAG4ooBjqz%>^YhE3|trOTcG zvnx#yOV+sQO55bh*UK)PqCjqrSp0eH2QcF4{?}gn?y-~NoBEGg#q=kDr>kXntNf;2 G_}>9BzmdKG diff --git a/compose-files/aquarius.yml b/compose-files/aquarius.yml index 9451ba4..6ec1c17 100644 --- a/compose-files/aquarius.yml +++ b/compose-files/aquarius.yml @@ -1,7 +1,7 @@ version: '2.1' services: aquarius: - image: oceanprotocol/aquarius:${AQUARIUS_VERSION:-stable} + image: oceanprotocol/aquarius:$AQUARIUS_VERSION ports: - 5000:5000 networks: diff --git a/compose-files/brizo.yml b/compose-files/brizo.yml index ef9812c..3459b3b 100644 --- a/compose-files/brizo.yml +++ b/compose-files/brizo.yml @@ -1,7 +1,7 @@ version: '2.1' services: brizo: - image: oceanprotocol/brizo:${BRIZO_VERSION:-stable} + image: oceanprotocol/brizo:$BRIZO_VERSION ports: - 8030:8030 networks: diff --git a/compose-files/keeper_contracts.yml b/compose-files/keeper_contracts.yml index 5d8bf67..096cf50 100644 --- a/compose-files/keeper_contracts.yml +++ b/compose-files/keeper_contracts.yml @@ -1,7 +1,7 @@ version: '2.1' services: keeper-contracts: - image: oceanprotocol/keeper-contracts:${KEEPER_VERSION:-stable} + image: oceanprotocol/keeper-contracts:$KEEPER_VERSION networks: backend: ipv4_address: 172.15.0.14 diff --git a/compose-files/pleuston.yml b/compose-files/pleuston.yml index 7edd400..ca9e52e 100644 --- a/compose-files/pleuston.yml +++ b/compose-files/pleuston.yml @@ -1,7 +1,7 @@ version: '2.1' services: pleuston: - image: oceanprotocol/pleuston:${PLEUSTON_VERSION:-stable} + image: oceanprotocol/pleuston:$PLEUSTON_VERSION networks: backend: ipv4_address: 172.15.0.19 diff --git a/start_ocean.sh b/start_ocean.sh index 3e16d77..6fcefb5 100755 --- a/start_ocean.sh +++ b/start_ocean.sh @@ -9,6 +9,12 @@ export BRIZO_ENV_FILE="${DIR}/brizo.env" DIR="${DIR/ /\\ }" COMPOSE_DIR="${DIR}/compose-files" +# Default versions of Aquarius, Brizo, Keeper Contracts and Pleuston +export AQUARIUS_VERSION=${AQUARIUS_VERSION:-v0.1.10} +export BRIZO_VERSION=${BRIZO_VERSION:-v0.2.2} +export KEEPER_VERSION=${KEEPER_VERSION:-v0.6.12} +export PLEUSTON_VERSION=${PLEUSTON_VERSION:-latest} # Maybe not fully working! + export PROJECT_NAME="ocean" export FORCEPULL="false" @@ -92,13 +98,12 @@ while :; do export PLEUSTON_VERSION=${PLEUSTON_VERSION:-latest} printf $COLOR_Y'Switched to latest components...\n\n'$COLOR_RESET ;; - --squid-py-v0.4.2-compatible) - export AQUARIUS_VERSION=v0.1.8 - export BRIZO_VERSION=v0.2.0 - export KEEPER_VERSION=v0.6.12 - printf $COLOR_Y'Using components compatible with squid-py v0.4.2:\n\n'$COLOR_RESET - printf $COLOR_Y'- Compatible with Mantaray v0.4.0\n\n'$COLOR_RESET - printf $COLOR_Y'- Not used with Pleuston: do --no-pleuston\n\n'$COLOR_RESET + --stable) + export AQUARIUS_VERSION=${AQUARIUS_VERSION:-stable} + export BRIZO_VERSION=${BRIZO_VERSION:-stable} + export KEEPER_VERSION=${KEEPER_VERSION:-stable} + export PLEUSTON_VERSION=${PLEUSTON_VERSION:-stable} + printf $COLOR_Y'Switched to stable components...\n\n'$COLOR_RESET ;; --force-pull) export FORCEPULL="true" From 74db9d106b1f25163c7dd3a67359a84cb3cd9a43 Mon Sep 17 00:00:00 2001 From: Troy McConaghy Date: Thu, 28 Feb 2019 17:15:02 +0100 Subject: [PATCH 3/4] New users shouldn't run Pleuston, for now --- README.md | 4 +++- Welcome_to_Ocean_Protocol.png | Bin 26308 -> 29125 bytes 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 2836ce8..e09df77 100644 --- a/README.md +++ b/README.md @@ -52,11 +52,13 @@ If you're new to Barge, it's best to do something like: git clone git@github.com:oceanprotocol/barge.git cd barge -./start_ocean.sh --local-spree-node +./start_ocean.sh --local-spree-node --no-pleuston ``` with no `--latest` or `--stable` option. That will run the current default versions of Aquarius, Brizo and Keeper Contracts (listed in the table below). It will also run the _latest_ version of Pleuston and a local Spree node (explained more below). If you don't specify what kind of local node to run (e.g. using `--local-spree-node`) then the default is to run a local Nile node (i.e. `--local-nile-node`). +The `--no-pleuston` option was included because, at the time of writing, Pleuston wasn't working with the default versions of the other components. + Welcome to Ocean Protocol ## Script Options diff --git a/Welcome_to_Ocean_Protocol.png b/Welcome_to_Ocean_Protocol.png index e84efd63c8a0246beb0428531e82ee04d29682bd..ad632336069dde6833a5171f0f67a64e07998b1e 100644 GIT binary patch literal 29125 zcmdSA1yodD8!rsfNI0alG>DX>q`**8N{IB((#_ByAtfLn-HLQ0-5?+>-7P(oG{eAm zF#hlR-u2#l*SEg)t#z;KxQ@=u*=O%(Kk<8h&$C0HE6d_ylVc+xA>qo)fmM-^?yvxV zMKRHVPwtTf6azO@CrNpAOyG|frb!6!e==w3SI%m7X3kJUM^hwoTRR(5b|+&;Q&U@~ z*LKePC@o@0NDq+Y!4m3jsj&GAC(4bqjf=A*6JibmB&--DP9!2bf=rfYWAZxj-9K4R zdiT<+G>3z~%xCSU>8pIThB^xx`8vXUm-K_pjd{6ur(J1QKh4hT_f(r$h}!5>vnUX; zOEQ?gV0!8&D0h$fjiko<5ey$m>ELO(-!pYnL3x1ureREhjm2x&=)1q)PIz%v*)NaOi#IYQ1zzDzb zN!xTJ^89Q%d5)AXE3QF;CZ-U+n(suTcN}~W}zd3;UsDjXd8X2wa@#d zB@nC&H}OMoKjz-NU92zS*;#_rqo3ZmVTBpUqUDM-HF z9$jS@M)skAsh>QGhAat}r4Gx?pl5WdA%nI_fWZUq`J<%&X`fVfagW4vuYHs^T9r#yj&xaD|g)=;R8A%c@}1VmT=GjE4+_<)lZPIt6bO}Rtxup2M=V&-$?p?p#jkTHYNKC@9HVVIpI)O`JP66}Dqg*tG>i5xMFG*_HR++X=R+np z%li&>XzOZn13~t*i4XJYm6pScwZOd`ujNZ`9P7gGMSEG6HHd-Bd{Q@yGnRNX4_(e; zX6itf`t;=W*vnkmXM~iE_&O+w5Bq0G`m6O4`=zgNms<^!Bkz5&_20sJRY^6wbg-(n z)O|3`J{5ouvMxfSfmlu$PShAuY~)~-K0T4}N5SA8CQ`40?EA#1E4Kzek1ocI zdh`;L-z(r?%)M30mA!4j^$MeOMMm;LJHG3(`F6RDtlVx>2Be$XI<4&tI)6M+KrJrx zZrc7mWD$WnTO*l6A;1Oo?fOPGXCGp*_h8CNylt-om3@F~R9HYMkVY^-U>5UKRIc3FN2cwPeOvrNF@ z%B=vF@PGX+yI0RIL_IH){0tM<6Y3qUT@}EXuupfu0jx;lRLikmf`f*u)fYVbP2STn@+r4!K)6ITtK#Bmu&3 zbdFC}Pw7gR+MDP9sq zh0MKev!076&Tq5cY0ViJFfJmVABoh#%vF5}9{pjdwo(UNG-vx8}hHv(&UmXd| z%86c3N~}t1CQ&u-xK}V=t{7B@sH5twfTADE8I$ureQzGq&*dYeSrG_?F=PA8wKAVOCd@gIBjq2Z&+3tupS1hTYAl|x7Ebsy^Z5_)i-p3=`e zak|jkC+O&61U*Q83kld0b)m|LvDhIHFUPS@$8tkDv**XsY}3#XBB=y7@I!s_(K2Lz zkyw+rhof~d8Vq!*kJ2PS`EF0H&YuFl3lti+Cjo$+=&yj5fwaCn?2q&;)5w_%3MqO8 zxMboE$mtE%xQe*K^Fq?Dif4SrXTER8%0DIQM1Hh@N%_j35Jnk(Ndm_!B1>n-fNAf& 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 A9smFU literal 26308 zcmdSA2T)Ycw=Rm3a}I)lWRWzABncx)K#~$ANfab!hKztn77>9#!Uz&1=OO1TIggTa z9^#P0-S|__|D5x`b?d!)uj-zuO?5GQ_U`VrRmr+AQ zyU7FmvEX0<-}EnV-2@s8XDI~@9N^=PV-^DZf6GPog^RkqxeLVD=@puVoxSZV9%oah zSFh}xU)#HEqc=#Pq1{1Kkdf4IPuiS1bH2Uevwd>3e?VZzibhuZMhJ~!oAvSYPv5v+ z=}5%c{!r6W`&h0WD?G%W(VLQ|I{G7Bt>7n2|BO+1WA8_pT89MPij%iOk~`bP$9z{4 zJ@{Qk3LYs|w&(1R-&B6MQ-FcRKh<9fMtdk3MneROOt75Y&yk|U6|8Bv*vj&f7@p#{ zB^pESga986VLjwc8Q_DLI=~EkLcjb^Za&m^ z)U1no>2{^J=lJUU$Try?T=Wq2)gELS4yve*47-~?EY~NFzfJf?xyv!LU?_Dml ztC>P_gD{iAvQ64;Ce%O{t`;SNm{frx*^*Qt0E932hR!fNAJd71%3Z5Tbxtm;(QLabz-Py|)+Y>xoRZZ>v-W{ZTSk2##t`Q^bJ&JyGjt$+(U7Tj* zaWKXjKBQRtdX~B^kY);Qw{Utkj6u#)I;>&3?fve+PVQg~;`kM-bip*8!53@)yCFG| zlJpk4%>`(X3*1;Pq2Q_gZgr;K-`eZrLG;(kdd7KuC4rikX^cKW-`4J~eHC>CUttXv zC7x7Fjy_g<+{>&sNTDn9@lN6mEmNB};>U97M?o?(S9~&KQf_$L{-22ge5@ThF2i<& zw9PMP2GHiJ!5lsl5O3EYg39hG0!Y#T6g;)2%mUc<$C%Ia1d+B(>NZMk(A7%>3Ln*TE+_N^y+C&O6sJ ziHf1nFAdSS2Pl=bQ~Ab?bloDo(n@?zn+fx@P_&X5{^2~^rgSUN(G}+CQSV8E;G57V z1Qds9wN`YQeRI>uBrquN$GhUMmHyr1zAJnS*iUBRJTzX?Xwc;7lPy?pkE*@^b=rr| zQ|DI(GT&9N)s$H{TNf0$h0y1ysu)gZTy3nSer#?cNKUiUA_G42N{gm@=`*F_Z^1qL z^Q~hFWM}q5d6`DN*EybrxjRl`kNYD=m4bsNV&YJ$pY!|~2k%eSqWh8kJukIxtu@s= zu~DZ5yRDtVLb=BK`{icE(sLvZ{8`!gW;uA^u3+dT-_@FhC0P`@``b`=RPhB~IE5T|#lK)8Gx?&o3a1`Q;$%%YZ6ktieU3(+SB%c{Ex zT*uX-3R^FT>k7#TU-~=X44vT+O$O!PP@*(<J<4&inb! z*5SBVVdv}drunA-8P3>v05M3w8f2|k99cU2Ha_(ft?3dS`kE}~b8!V&B}YWsW%I0( zi}c|p$0*h8w1|h#oo_RWMRl}(>$c|y8JHvbZ@y90tbpJWjTVg$%S^@t80*wt{5CPN zCR1I8#&?C}DPq{}odxWO;dfWFl#>oPGROWZ=Pu%K6ewF9LT)n?na_V*-$z%^G`1l3 z4zxi;vRRjCG(pt~EI^CxBN~ZFI=uUI6S!_O%0(L_lKW4f$b@9}<|9~pVm^i!;~hj5 z@j^d&-Jz#UM5)aE9Y(c;UEhk#IuF;mQ;PWu$&#HnaM^PKi|K*1;MR zX+m&Q-b_$_c9V^5M`rK5`NBH~pZGgoxI!Qb`%vbRH0ZT53bbVGcWZ10|v6_#M~L_qHW&*l)4P~s_JHV$fsnf@Q_LUYFzRp4$l)knRt!`Si_H} z>$@vBv@11Fw|0{IW5lQFu1aKCqg_1YWxlgUTE4)ROi_3seVnb|b&o9idnP{*vl_d| z`3t|QaFS?@!K`4w7+6VxiT!TUaj;6aRli;DQ$J;WqZDO%6=m*41I7|PFT*tZg@Q4Z zcd0}seg1A)h&-v7geajzbFkutWUJb*-vQ&Ju<*PIrj+7zlHrVJW2Tf#m6ZwOclx-R z-V#6mQTd8L0&DnMhT?ny#^$c&k};>8Vz9i2Njg0?c$e=Q>Wi4c>-yejF0#`SnUX zpb1wC`r(TW|Ng0lB$`qhaLUgK%x7TFE)GgD$~}v@b4Q+R*7tvS>cxJg>+L|xJxBra2UPXGMWSnW(`awkeefBcrWsb~`|y}9gsTAc#x z^IuvDBt|tglytk1*6nFF^T$h^+Xp6B_ITP@JFjh!>11ASh~|Le1c<(K$1>GA?W5gt zo%3V|wLjvxa|ZMb&bjA?9T7$Ub-^(f^3;8 zukHr~!k9*<)sR-KyvUo+k3g9j^oiU4am-GNK)12Ygmb67l80n=M&Bk!i3nzFgT<<&r9J1C~juW99qin-|XT zkpHNjY_#k!l7%_8+lCEw?2Hk)U)SJt+_%!ju+3wsgTJyfm3(~2f{3)#pJ{(p@{&2@ z6#$wCR4N}wXmHu`7vzPQ=#S|<}1_aA;d z8t>UJgL)bzO%;8@Sr+n1w?*!o=V^F4Tr0Nb0~h>iT6{w__A*??m;h1V-%`t4W9@w0@SI&l+G>dusg?mzKlPK7|Xy z7Ry;HrSS4&7RQb{Q-;n9rH?O4<$C}NeA;gE^XL79;YvxLt0y{SaytP}$;<_B`c^H64WTxc) zk3E9Zr=_U#>9q@1YjQd+zI38yVy2WjDg&IKJTu^PI>~aIZ5q(^UVS$J++h+RU^c5` z98Fcf=#jA;CvCObzaHx=%li-t$zYP`Fw^__^w7;)laJw(Z4`W)OrA^IAw$G5KO0i7 zgQS49C;HJ(P5;%7lu8U_3cV>i%&NFZqcN_HGE@`cmBLmxMN)Sv(44}xuUeg%{Kb*% zXu0a6rZ(9e<-r9Wvl;=gV{&5F5Y>2~Yvgwb7Iq6UW#-ezh(ywjK%zoIdNP1nWz6=G zU(CxQ2#`G|Ct0P5xVniuD~64fCpNOA(MwNKWz$*3e0ON(W_j4HtvU)AI$R;~>Gw#Z zSqGPxqQgjyCWwsKRp)ql<3$~0W#+$LTV$?%i``6U!uEOQ)H_?tR@ipy+K(`1X2vw& zCSGR3>{maT)29BI`nsj%;or7^YBd4&ujkhjBT!Phft6!zx3>*IeTkk{&NQYee=cSx z{%b3n?Qqzx4JDRyG!Uxl5=6Y8g451Sg^p)10Z$JB`*xf@{h|MreD&zu^y&6n>P)bh zf-^RJ`9VQV;lWa92_52kZ5q4{nsY4bYx_fO|QL;kaakq-L~O> z*_VJF@7e+X(>VUChMAd5HUT?mZ8y;s1^wW!^tY)B2Rxn|uy*H7{!yZ+qvv#Li2UaD zS0%snH128_&Ho~(ZpH8GX{q6za$C)$*w7Gee4vlwA}HKVY5AcYsG?IRuf=W}O>?8T zcVnJMRmSYrfY5wcYm*)OYujd+-;D~y3VrpyOoKbAV4$e8#MqvUOdL88FA4u%;`V!> z)&P(5+562+h#WFf9W4L=rN6!b-$FCrqd=x18!1V3?g3r4l}r@zL>})aSDL^em8XK6 zhsiX_=#-=~Y(XV6x1G)Q0QK@ay{$83` z?3rljqXLc;9LyzofMh6G{^*JCaOeYLOWi)Z#O*d$N@wZ9kj}kyt`+9C*T}{({dU(Q zN|CRRHqo!5U2G8UsO573I`0ASr;b>Xt4k zf##<(_`Uz)SYM0$M+UmxSF5|9e{z zK*2IHWRib7q)ebwKmqQ8jL9V#yIN~Iq>I8NaoaN*0o z;2H2CgVl9y8Q2lbOc9C#(ASq3;^>3~&woW>oVgi$PB*@a8{RVh`;zOftIjDdr5MdS zI&jAHn_Y>gy{lhS%(&hJKg2`6^Gn3LUxRF^=9fVySA6NDkPSZhb(LTM3r-6@DUwE> zWjt|#I2EgrcE@C#UQB*D610)fSjO-oC97x@c0K}JjG+lq;du@WGhR2T?b_{ZU$kBk zI~ru|qP8%UyB#5FetYWI7wbz}Of{W9h*Fw!+CcW=_&La0kQ;er_y=276eK?X{rf#G zIX^SW1A$95$(x(WhIi^J9G44y->xq4krO>pta$EeU(44@e-zttVOgLr1 z2No~ee}o=0i!2cg?fnbw;mQ3sF?*p;c2@X!eHo;aE4hwLCg4qN1+slI7hS5qu0pA^ zU(aWl>fs>$BEB%#c_Vmy1%DydrbD;QUEWEPX@ZBGKwANu-zkCF~A zu0jTI5Ti%bPArU!P^FLmLQ2FN!cl*L<7P@bUh({*%JFhtl>vB3_cw6KYXGRo%Kyva z%JS5RT7NE{la-F*R{gzKRcHOP#D1@||Nj~$z`=ZP|AXk41cUunYAW+pslduB`({x` z?a#{OrCwh>jgx}MpK|YW&K=*!wuT(1t$dXK8yyC@m=X*V%w;)+=c%)Xmie(MGEFG@ z#GQPyJI|Z_MUN|_0RhXuMCMvruPy&Vtq0sQ;ch96ou`AZ&JnzeZ$zKRY(A_^*-8TzRNn?3m;NhR%9`Z%U8ZB*3nWMvP zS?VjuspGQWHL2*Ei^I#SlrTfMO@B7X#MQ-;>yDL?KUA5o?u#va_YHrX-``UFi#meY zarlz0WHbK*(1q<5w8wJNNTk8yPOEEj`*;QU!~73p;h!RaE|%A%B21H&FxGNCO)=I*fv#5{jDc&8bEQSG0`v#L^9N~o`1+O%9#T|LLLie*DW=uAm3TlnP zzm;8Z@p4sxW8ETh$}U@5Z|6uWjr-P@wkw7dun2FM%$<~Q%v|5{mbgh6ptO7w15EEv{Q z&bg|T=GzQ2ph`8s7gaR%GFAeIomWby0}?&! z)j?N~QoNeoJK0fSMXUWBlklp{ITj7^3t2V2-1$TcHtr4cxSZg91>08S8A0|}IZzuC zw>UyN@W&Ac@HTGAEt3F^KRgIjZMg_>*aW2%NC}^!avWFBdk`5JByZxU)wAn?+uqL{ zMb|~l0|3mr202gd#|OiOUC=O07rr4gdV$0wEDG7ZN>&)qnh=FlnV<$JMgCZ2fPbJ%6W zP%pl}S|W!K+p|r`9(>ov?bp{`XQOOfC>@^VKX!;d>L7NTf3Q)U-@6+Z_fR%!g$6F0 zhid)uvEvEZS?SRGe#!^F6uL!FgCo#8|aV#n6UK*d~3){n1#I}-@J7m5&0X}tRV7@4TYOE0nR1_`%27f&!FJ;OA+Oj$xN zbSyho@NR+ec+7d+Hn6<63mtz5zgPLYW8XEApc)=~-<8x($cwUARIJLAY8`FCpcPSY z*-K_-5G9?jR$17X!2PVXj-(%U=k?TU)mI(7=W4@R4CdNB*1xro_3??F2Z9jsWGDV? zA<<$aiV?FkGvthQ(>!2|{rp5_QVqOu|NSe>(Px_c`!NNXs~e9T4?v+0RzmvRsE?K} z)i~^&fMkNAz9yTZ{+Y_{3Fbb}`DdZmV^{dOE5b_&@{QXaKc?=~>X)goi4YPxAuwyw z(B$)FP~Jj}E>t3s$LqQ!uP_m!4UawT7kUgYa0a^#*>7{35Ql#a=F)Uw80UX7@bkU+ zU|?=pa1d{~8d5aqTe{~x$Ll$SK9cD8cC$UIudH${VYp#bV7GTzLz>px&NG@Hr^pr? z6qDsZ9e-MoD;&4vkkz1oTq^86KVQ`g_nRKpls$4_3wJQc+Q~gM9oPK1@*!TA^C($L zLsvXjQ1BxHmQD{_(74?FIxx@Mr~mFn1!uhn)-`-+p{72%+7h%;T@axIdQ^w@+dC@mnDwgh<{I5UaL90`4yg{l&$AVKlwq%!J=E@;F^V25 za6QggUvJ+1GMQU~ixn;ZhmMDEq&TG95?p94M$faT$t&hLus0MlY#UC6Bgu|kABE|Q- zFmn4y>A_W%s`MBW#S>Z!HKL}+-(F$zCTj^PRC;Oru^^|ybbaI0NdJ!j=|cpD$rn5W6= zoK##nb7ca=^0&v2-D&g3|Ag4REiJD2C?)>24fn<+>*jG%>#jQ5b-35p*w1y%+??16 zeg}}my|uP4Lsq=6#AD%2YgOrgY5|aHwNEE9Y5V`d=xqRFdY$tb_|L(9w{Tf{@zDj_ zXq33VN0f0x&R?f&?)UurXRdrOFzcJ;zH#eWVD0mG9?AzWfbHMcS@b3YrMRA71K4fp z3!N{rNJHRNi+`NtJx2ka%yRS?@j$xD)1r2@F@4L6>@rW8u;*(FIvu|P0lP7n8jptv z-Dc~nF;l(7ZiBAi1VRKn@_1Tha&pBewq*I~hHAzri(14}hWn7TR;X&PmrS|4lpWwD)($|4S$IzdMO9 z1ZTWBb%JD*3sq4~RA)@a>YECYmkIWY*`1sBH{E;H8#@Mjnk$!16D#~j0$LY3>uvGA z(QH)LY__rPL~(2h{Ew?iyz=6-E-1SMmN;|Ux7OXfg~Ksv7j2^8G5CRysDv7bxTwT#n++s()YjcKIITBqx_~6K4>JgW+=pV zLJRq{@fYq%((OLFod*a(;lls>ui-uXJ-ot!OYT>=OFA~8RroSfEzr2b`38ra7j%z` zTv;lSdSW`Ip9Hkk{JxZ-Y}}y-+gFSl;x3hY$btB!)Q^XJ^uGcut}?LV>sN27{&3>& zG;VFk8&4b>v#XF2POTGV0v&T+ROM)(XnIZ!5T9v##@uXlvt{F?GByqW(O$)eOYUS! zGTk@V%z18czU@*j(_hA9aYPpo(%Z`(&5xd9mlxDHXY9s%%n~E${jWkbnlCf{ks1D0 zKbek5Y8x?$E3vWeqoO6e++KRb=k7{meRC!spqT+!)zjyy7YqTS5(-7WVXKj__$}J} zJha#%zqRA*czs6dtW@US+)}p8q>_{kIA99ejH;r03pxwciQ*|A@ z*w?b_ATK|COR4I9Dr6k6FT>{-zPh(q-qkav$G4FwFmtEigd*)zx0-nPGvtLLVCpC! z+S;g+^?O?Bcb$UOS{2!Sm}yMESX0c&kGIxNlL_RD+ID;W9Y^)$#jj0E??|mLizGuo zZk`qg0k-`>2{sKO_Se#QIkU1QJr z4=fG%psq-ZU?>@d?cY#N* zdFj$$8uOH{f#>)IP-DN(vxCNHM7 z%_Mw4(iGPVE$fInn(wQXIkwwwULJNQ&JI3Ycm*Z^*7|jqf*Xm0WU&w=o7wxJ9zv`95praT^J}I+fSJEe^e$+WD$(^x)WO z3yZn?gUE{-Y5Q9lIJrf{7aT*%S)Fyqg_WCPEnOqVM`BV%)R^9vxTs=~Vo-=>bCxB)H659K1ANXq7#bgP+AcAf^{=Ugp!|M)OdhUAo9g)4M&r#> zSLmnU9uP9wK1NiWZq}}x2hHlIg3tN$fYVVUmU9{6f_?0_7KQH`Z+gnpAHJVq8HL|c z*Ty#6k+uj?sa1Lia?D@Mp$Z5*GD)m3(aLYv$hcD*AiC@7l*LC0M+UuzAv|Bqx(N|t zFka0lylPNyT}q`{xAc5-fG$^z8a)o>)%PQss3s>jxZ`=D_qL9FpYLUQ07maxx#2ws z=|`hcZ276-8(CMOMfUa7^A8UP7-J-!1#ftVt}Z54u0>)%yeSer=pY`n=ac|`59Q4) z;&H8nT@cQN8j>Z8ysH7>82ej@q#1jUJElQIjiGbsMVk+l4L3=Qjou_>VQQ73izcop&*i-;+LX znFrJ`w2qA$XZDexB6-UOF}b^qe)`5A$Za=8Tz&qwubFnFGRyn2J<4T)qoo;+`6k?` z8XK}4FTcj&EAg-$j z4G@*zDyf9|#NTxd89_ce_p;daJiCVr(7b9%)vh$6ku}~PmzGwKa1QgE=+C&CXL_&_ zQ*Si8`l*}(X}Z$FIUgdhFK$j|qa4T)7Yq-fGw{Iz$K8mjLs_11tvFIkKu`7^1P(*x ziWApE+Bx3bT+iORgP3~jcb5A$i?8pzz>kFXGD5=(d$5siyidRKZ&t&1ZbP%P#D=SB zj!5YW-^_3CG>JO3bbMKT0FE~KN`JiEmX_z=(Fj(>CQfq{RtZ^C6rPXr5cf>B0Cs!#nwwY0ba^^2rm-)WDVK|kw zNesH{G>wTWdK;IXl3@Fc$@*@|ol_?fPL)ISNu!V{4?aQhe#M{i#M1&Mi9^T5isM&G zlMaj#_)Qv;nwRk%diWMdQHAm8`5-us_IPg9+Rtqz@=Omx0>jF=Dfr(+MfkUGA6_ZH zY*f{?+3@Z04!>)rhcNG{rnuaU3a##&lf&AfKHGUtz~^jEXl}|9K}3;aKsB`Dy}*HF zpi+y9YV?rTT)GwP(f(u-g{FT@U2=6yTsc{b8LGhzBz0szw@1-#PGjT3A3o-7)ethS za5b{VcC?u8Sb2A+E^4;X072WRVXP%&3P-k@@y@O=h<(-FOld)!qQPzq4}=-u`?{pU z;EqL^fnRL-&DvA#=-eV<2~pWi$Xa5$zABNShsH-U@2d_T0Z~l(kC81_MAZ$yLmIpF zciKO89%uk%Xnttq%2JyAhld>s0u~|feXicoIqCua(iwxNrg%9pXeLCjv*i4)M9nR) zSqUKZF^jI$OWX5P%jRoKl(N)|PWTR#M-JeWnig5p*FmU!j0wog4OJ%b+DE-VHEF1& zP@Xntrs;6WgZA*s;va;DQ%{PrDE*L{lgG**d!$a2?9W@rS};cfTOQK0zy5&+a2!^2 zaAP-#poqxIbxVY54o_p9^WG_mdPBUCm%!!7gu73gA=%?p*)XBe$PK!-JbMm=7h@BW z$i|9d+{hVI`N>TNVsjTp2?Y4@u@-WpAqL)V*8D^-I>nPLRQQp3IhbwEkq#LWa= z{h6g>DSXoUtB2DzY=|?oram7Uzm(N-Kj!rYCbJU~+9R?N)p?Z$&n?UvBTQcFeh;d?JeIDa4JspaEMNZ`r<}j;nb<%J~V_ z9HrvlHCw*%G)V1rG;@A4!zG5`BNgP5U)w8-8P1nt-Kc*2ycVR#TcdG18)H6EIClSa=7c- zfss4p;+1`jBq_3yGcqN^M1=l80P{sD^$}Z>BAhwRwCC}y9xgv+VGtpW(u8_?6f(Ge zJmmca4XjI2nOsTV#~;6_;z~7LmzVrveLJ+h6q@7Nv%cE0t+DlJbD8iNCftLbTewVP z)pLnbTO2cj@r?~5a`DJPn|&vf$ZLWn9eHs(!Y63Q1cN=&ayp1GD*9~g76=6ukNV)b z1KH*CPJTVvt5oWUZGK9<_|l8ohQ<7-L;fPz0tEI=aR7;y=6&A6@H%Qb1G9?V#}L6@ z(*#MV9amF7TwYi=X4(%`R6>o|HIEUK*X^O}Z^WcSUWHt4(N)4Z6c|OqHqMxk?Hn(< zOMoh=wrsuN;^E3}4~Ew-h9!&a36Tgx(o6HhHqX~@9Hw9~^|p-5o7V2ImMFu39L^n5 zCH>|op81fn^*c?6nw1Mzu{%9GJ=>?^ZmJXImR6!TZbEZ2m-pt@!b^txO=3O>CI-^2wmp*-+OG!JFJBI?lRi|m9OV}I)&cz zIayzJ(JQ+v3#=DFv?`_*epIFPq`ZB%VA_2PyxySwl{u?T@+cFbQPRkMj}?jkf=QfJ z_@wmv6D#qBJcf*zHdJnyN)#|qX{aihDFo9zQU=1W5(n(OGa~C@6o`y;s;n?%JzZT$hap7wF&1ZPWk(=u>|Bex zfgL#5@e`g)q}t*DD*r4PAj-gw7>US!aIECEj6=OxmGO{2f|w9qO$A+X3akm)W(=Bu zn`|bIgW0N}u2I$!K?k4$Pk=BKcg}+SQ*yr#*BjwKq?*IuCbeC=gYf+@oB9<) z`by<^8{DMa;r`eFzM(09ZNsH;vrS;u@>BHYg_+h!6-gAY8l%tKbNYQu0uj}ex72|q z9p3&EWg34G&8u|2_?US!a3kS6MDmfz@P4gW#KEiq3!F2OvBu@1zm@RFt&&8EQiEr& z?PR?~(7qD&uvdB9*Wxp%*V^c~xkt3G3;$Rl+;+-uBWbo^*6St9`46BHZTHoAbuf-w zL7g#k;1749Z0RE-YpP;91^vRxbxyPM{}aN&(>coBi#)0HdLb_^adU-9GnQj#=?Btr z9Nl5gu=8>O%)QC(pc5CceDISmwgyL`#Pa-G6Vm5{ks|t{l#(mCn;tgYjRdmn<8Alv z%Kv?l{&#cQkRlQJ#5=b@g!zc_SvmY#M}b;`QEZ$;#%8QxBdhz?aMKChFWUl>89hms zL`G=}->llFFNL$02?mR|7Ybx%<#vDcBG8XW^9nH;jjYCu#^5G&^u9J^@}|UMPl^Ny z;doYwMZIS@a6!rO+{!r->PcI!>?ojK#z&haK{^fvb_! zj;5u7<<*f!s$7?oxs|(#tO-(M7dhUh5^x6IFATRc*FcipSWwzv&50sH?T#lmCd3Oo zX%Azp@Ex|3Y9(4nw%HIbBf%)aOZE!#u05dmuq|=D9TjOZRzbd57i9#&78D5E5Dx`n z!~Y%h!Tfj7=MjK%D5mo}kd?tB^(+_@f{ibT>o;sC-R;~y54)Gf8f~Lvh#ncAd!&tD zhJN!?5vKijXBzUeu!bl7r<{qieU8XBABEUP>}=P|AKT5KEINE}BE4|eIUKVL>kj9& zi&zV^ff(U|Z{`j-aD?<=f749|1&PyH^ zf(CsOpn7hhmax6bwJCe=!+(_9{$kRXn0}E@*M-0T=`aQ7C!MIei{}Bou1f`Gp_-;{ zJ|9P>61y;+mA5>lhXhOFh~%@tl5*`Iu>mU)L%uV5Ni zbDRCr^h^12VQCh`3jb#s2=vvfmAcPJtFS|3RMHfE0J7gTvT{>L$r_v83rpyW93G#1 zMnv%%1jkT}*j%8=2gcFAz|VFAaBc1=Nc836wh?~=yV#-Wd3sQJg|Wd4wi6-S7o@a(xJ&=gKkl|It?K_Bi#<0G>vruI<99`fN0Ds)jI{k0 zm@Sbu%txAxOgYhV|8w}P%H$Ss_^fn01Yn69*v`6-sGq6-yEAT{he4AMjV8ddR!4S9 zgvWD`P?cJl5g|8Q!T$!`ew0_}7FPLGujmX-5Dw-VvTSnh=sX?g$prviSHi1NO-Xl5 z@Xz2g6qx)_xi1OJZyk4YwBqB`%=u15HE()S@4i$z zUGpvB2E!@?!l7RKlc)whvvUd!=Nk)InaLv^jBMWw2?d*h`uRtGkKGTg?&kknMr`rt zL&!NpHoO;F{pe00<0EO8`B!QFA{z#yQVu&WZT7W#az>#!6mPX1IOKT@J%KsuvQhk#!fhhPTbTF7)3G)kl?Jjt@NaeJ19}3TsXPhGTDI}#oyDt$F_?aDA>4{d@K7B&4 zHuWAj9XS7l5GXv87e6Ohj%{GS4aHh7f?ScV#o?xr&$KIJK$Yci3cNa(Fq?P?gH{tTcXP(CdDr=713HaPnI|m)<0-hO2}`7?z@Piv$`)=lV0mj^k{$;g;4NW-1F0<@XR{ZKWGOTONr4CVXbd02@M%pQQAHn4eie@Xzk!ca$KIzm5n2H) z^w3M{&dWvDb9+O>{+EfF@IWI7`Q=t2SxUX|e$A!i>tlYkEqWPr`&n&zRzy7>=`-Tt0 z)the?hX%U|MSf-rfcFw@f`TuezGnpGWlG!8Xtn=v);5_FGv4$IO-nBDAs$2g#l6i(z??~Pr zG0z*>$4_n~xv_K&J*ho47pp&aI9$Y2i3BpgdbcYQn4gbH!{pMeBtAd9_P@b3meyDW~-+Wz^1}_jo_bq~^HBH9~{PCs7eHk@O zhqQy^Z-A8!N*g$6tLAX#Gwp=$P~I~16)iPcK{sk#JgZ!m8q1Y$2hJhgG}j#npw>;Q z8H>rinn8Ch~x)$KC&J!yK zIloQIu78c1OpC04<92eh2?^ z4gK%arB~-33s&O)8Mv0_4%;yN{s@!ZBS=G2heKW2zulR+)CM9tf!m2=GIk z_;uK8oJ*CH5RNwF9fFAQlAA@whj0D}*7k2M1>$Jp* z2kdA|LKPOfE21e}ieDTINpeY1>~wuawlA~ak=>|tRCESw0Ur>-b8k)j3_)cXN!x{i zmN1ECa{kl;1Px5xu6OHV?I-Uo&h9gYx^K!4Zp-o)BrcuLX~~2&xD*6_un`Q|5)^jj za72GLXN!>urK@ED|Q-;@*hY2-9ciVi|5;Zr%+tvjs zRsdm+3bz^6NHcsannI*LO$sk;=85!oyL-bmrtWG6z**DzSL4+qA;SQRIX(+TKaM27?MADb zgCEA%p;t)~vmTg)mvj=ppg|GU?yQd{tLU(zA@$(K?!6>tFB2k;@1&xm z(z0lg(_UsoI(<9dXyuSx$o#~$(%HGFX1bXHKiiw_r9skc?+VVT>d&-b9qn(>mLA6N z1P@F*%iE`CP2r|{xsEHmH1y%11=l=fM+SCzX%)`C`H9_}M!$s$3~`ni0Sh8KTYx!w<*8wCZtclXTX0>ObAw%Ds14JX`&=e&BM?)FY54BRNj6{ zsBbV7w9jGIla&lcM=YBwU3ZeZyB;^E)&JIvzbU!`ry7f&OShKw)5|dJ8Vqtv7WW0x zA(SbvD%fC<48EO}XsVvjQnYJSY_J7gqlO*VcP^I7_K7$v*whozgqeM<%?+7!CAT@Y zPz!dkT>0ckJwN3G?(^TiU&huV`UqC2#DwJWdmrz;NW4A8@=?}>xjTfWd?C zX9|g%*LUIR8(>gVuC6=(l=C7WWs=8Us+9>p|5p`L3f~& zM`Tq;c1fmDkZeC;FJ8+07t$`HuMqTCQ6ulw^>2`~_gg%oQs+@>c%bRPGdNMmblmU9 z=A)r)9OPEt6WLX-+CNsAsGo$%p%c1BqF=7sAYv6JpwHw-mI2wCsZ;suI%}c}kBRT})$}5kcoGw(S zuf97he=?1dP!v=h#s6tGoke?;mzgHp_l%)$NYCM1NI`sGxM`rXqG0SI=~%2*SY@lX z65rYZZyq!d(%?mZi9DUFNf&kAMPAa_P48H0A@dDsPsYrO&wP6Z+II`s$AL#^;0%BP6ANSVzC;sG1n8TL~K=A-HGANvOH;145e?*urb3`sbB zl2bWgqBX>;5>eT&qxoY>Ng(D#ZfEZX1D1$o9H#g0ME`tv8OI^-N+8vy>8`llk=~$S zWhjIpw+p*?{&uuGe$IG_Ty%|KR zbmHAJ%a#6e3SWgOa~Z3aj9q0M(69=6O94OtTtZr^J-ZQ6yz26s7sE5=D^nXIaGrEaRvQn0rT)?HdK7G%L z`j&{vvT=7R#GVY;g7)nj0Vv*cy8Xe90fWH2uTDmbJD^>AS4ccqIrB~hhG!It%gpy3 zEiN1^IWQhB;F#ngv|w-|xq9+wP0P>yy(V`nkaR%JGk{K@KNEMgrh^U6NPL-bz{IMe zR7|G~R(497L@nGL>cCO}JqYQz)r{0t%<1Up(Fua|qJKE0T4TAG`$<55=QZJuc~1xQ z-Q3MKjoD92CW%BZi!kxO0ZO8Ty?4aIeZ=m*`T|Kd86Jis=o5L+6dmd6#lN=ZCuue< z3%w{bvBgV#9k|-K!?Nf#Q6z5RAUD){=>5#Cri8N_N|sDz?>$seKnhYAbiUnpJE>+Sn4jf6jHZ->tw${BHFxuY zc+Vs>=k~iW4(VTV4$azf9rAi|h$Sc>J-4#Ms~h0wqFyNokNR>+!kydF<>hhQJys?H zwUkC=Lb~>g*cD{MlTvpj1aJ2MA*|V^&|#43PyQ+E^33@Fi$-g4Ci>J5#;EJ^I3{PO=O}E1ywOK z!+-t$Y9iwN7WwlolO#*rfYVcQLp|VE)wrKKCU>NDnp8ZoHcQJTrJ5;1lX*4&M7 zy>!ge4K<9o{s$Jl(w7LnJ>e|RR8&Lr9tE+SY*fKWM)_kB0xI+UdZau`ZHwy{|ch;I9=&>F+(6{ecOZ+5#e_)cqy zbpDmnL{jhVlzT}<`1A~c>J@H|%lZ*(GqMAZLiz7UbvV8|x!+dF1r89}LR%AJWM5@? zlN98hYbPP0u1fkiWKL9Z-(hpFe{~5M`e>iSBuB5q=Nt45%1%O;g90+kJWZP(gz6%6 zx+%>md!X|mNul@{etwrXU)Ul`XP+i@a!w~0$Q4O4sVHDf47<(4repfHaE6T1NW`~l zy!Rf2cD$#+dwFmG6Gh9!QGbau^}nh+�!FZjX!7MT#K3C?G}YC^ZCWD*aIuM0$}T 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 From 0720dbaaefd1cec38851f67da1103edfeb26006c Mon Sep 17 00:00:00 2001 From: Troy McConaghy Date: Wed, 3 Apr 2019 14:52:15 +0200 Subject: [PATCH 4/4] Change default versions & tell them run Pleuston --- README.md | 15 ++++++--------- start_ocean.sh | 8 ++++---- 2 files changed, 10 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index bb7fb07..ad48fe5 100644 --- a/README.md +++ b/README.md @@ -52,15 +52,12 @@ If you're new to Barge, it's best to do something like: git clone git@github.com:oceanprotocol/barge.git cd barge -./start_ocean.sh --no-pleuston +./start_ocean.sh ``` with no `--latest` or `--stable` option. -That will run the current default versions of Aquarius, Brizo and Keeper Contracts (listed in the table below). -It will also run the _latest_ version of Pleuston and a local Spree node (explained more below). -If you don't specify what kind of local node to run then the default is to run a local Spree network (i.e. `--local-spree-node`). - -The `--no-pleuston` option was included because, at the time of writing, Pleuston wasn't working with the default versions of the other components. +That will run the current default versions of Aquarius, Brizo, Pleuston and Keeper Contracts (listed in the table below). +It will also run a local Spree network (i.e. `--local-spree-node`). Welcome to Ocean Protocol @@ -72,7 +69,7 @@ Option | Aquarius | Brizo | Keeper | Pleuston | Notes ------------|-----------|----------|----------|----------|------- `--latest` | `latest` | `latest` | `latest` | `latest` | `--stable` | `stable` | `stable` | `stable` | `stable` | -(Default) | `v0.1.10` | `v0.2.2` | `v0.6.12`| `latest` | Works with squid-py v0.4.2. Pleuston & squid-js not working yet. +(Default) | `v0.2.0` | `v0.3.1` | `v0.9.0` | `v0.3.0` | Works with squid-py v0.5.11, squid-js v0.5.0 & squid-java v0.4.0 Note: The `latest` Docker image tag derives from the `develop` branch of the component's Git repo and the `stable` Docker image tag derives from the `master` branch. @@ -80,7 +77,7 @@ You can override the Docker image tag used for a particular component by setting ```bash export BRIZO_VERSION=v0.2.1 -./start_ocean.sh --local-spree-node +./start_ocean.sh ``` will use the default Docker image tags for Aquarius, Keeper Contracts and Pleuston, but `v0.2.1` for Brizo. @@ -121,7 +118,7 @@ Hostname | External Port | Internal Url | Local Url | Des ### Aquarius -By default it will start two containers (one for aquarius and one for its database engine). By default Barge will use MongoDB as DB Engine. You can use option `--elasticsearch` to use ElasticSearch intead. +By default it will start two containers (one for aquarius and one for its database engine). By default Barge will use MongoDB as DB Engine. You can use option `--elasticsearch` to use ElasticSearch instead. This Building Block can be disabled by setting the `--no-aquarius` flag. Hostname | External Port | Internal Url | Local Url | Description diff --git a/start_ocean.sh b/start_ocean.sh index 659a83c..75d43f4 100755 --- a/start_ocean.sh +++ b/start_ocean.sh @@ -13,10 +13,10 @@ DIR="${DIR/ /\\ }" COMPOSE_DIR="${DIR}/compose-files" # Default versions of Aquarius, Brizo, Keeper Contracts and Pleuston -export AQUARIUS_VERSION=${AQUARIUS_VERSION:-v0.1.10} -export BRIZO_VERSION=${BRIZO_VERSION:-v0.2.2} -export KEEPER_VERSION=${KEEPER_VERSION:-v0.6.12} -export PLEUSTON_VERSION=${PLEUSTON_VERSION:-latest} # Maybe not fully working! +export AQUARIUS_VERSION=${AQUARIUS_VERSION:-v0.2.0} +export BRIZO_VERSION=${BRIZO_VERSION:-v0.3.1} +export KEEPER_VERSION=${KEEPER_VERSION:-v0.9.0} +export PLEUSTON_VERSION=${PLEUSTON_VERSION:-v0.3.0} export PROJECT_NAME="ocean" export FORCEPULL="false"