@ -2,15 +2,15 @@
## Setup
## Setup
Deploy 3scale 2.8 and add [the API Catalog to the developer portal ](https://github.com/3scale/3scale-discover-APIs/blob/4ebc72c26343e0d0d171ac3f20f510c0c813790d/doc/activedocs.md ) (see [pull request #5 ](https://github.com/3scale/3scale-discover-APIs/pull/5 )).
* Deploy 3scale 2.8 and add [the API Catalog to the developer portal ](https://github.com/3scale/3scale-discover-APIs/blob/4ebc72c26343e0d0d171ac3f20f510c0c813790d/doc/activedocs.md ) (see [pull request #5 ](https://github.com/3scale/3scale-discover-APIs/pull/5 )).
* Deploy Red Hat SSO.
* [Configure Red Hat SSO for 3scale ](https://www.itix.fr/blog/configure-redhat-sso-3scale-cli/ ).
* [Patch your APIcast to enable CORS globally ](https://www.itix.fr/blog/enable-global-policies-apicast/ ).
* Deploy [Microcks ](https://microcks.io/documentation/installing/operator/ ).
* Deploy [Apicurio ](https://apicurio-studio.readme.io/docs/running-apicurio-on-openshift-or-docker#section-installing-in-openshift )
* Configure [Apicurio for Microcks ](https://apicurio-studio.readme.io/docs/integrate-microcks-for-mocking-your-api )
Deploy Red Hat SSO.
* Create a project and deploy the Library API Backend.
[Configure Red Hat SSO for 3scale ](https://www.itix.fr/blog/configure-redhat-sso-3scale-cli/ ).
[Patch your APIcast to enable CORS globally ](https://www.itix.fr/blog/enable-global-policies-apicast/ ).
Create a project and deploy the Library API Backend.
```sh
```sh
oc new-project library-api
oc new-project library-api
@ -19,20 +19,20 @@ oc new-app -n library-api -i openjdk-8-rhel8 https://github.com/nmasse-itix/libr
oc expose -n library-api svc/library-api --hostname="library-api.apps.ocp4.itix.fr"
oc expose -n library-api svc/library-api --hostname="library-api.apps.ocp4.itix.fr"
```
```
Deploy a Jenkins master.
* Deploy a Jenkins master.
```sh
```sh
oc new-app -n library-api --template=jenkins-ephemeral --name=jenkins -p MEMORY_LIMIT=2Gi
oc new-app -n library-api --template=jenkins-ephemeral --name=jenkins -p MEMORY_LIMIT=2Gi
oc set env -n library-api dc/jenkins JENKINS_OPTS=--sessionTimeout=86400
oc set env -n library-api dc/jenkins JENKINS_OPTS=--sessionTimeout=86400
```
```
Create a secret containing your 3scale toolbox remotes.
* Create a secret containing your 3scale toolbox remotes.
```sh
```sh
oc create -n library-api secret generic 3scale-toolbox --from-file="$HOME/.3scalerc.yaml"
oc create -n library-api secret generic 3scale-toolbox --from-file="$HOME/.3scalerc.yaml"
```
```
Add a new Build Config to run the Jenkins pipeline.
* Add a new Build Config to run the Jenkins pipeline.
```sh
```sh
oc new-build -n library-api --strategy=pipeline --name=library-pipeline https://github.com/nmasse-itix/library-api.git -e PRIVATE_BASE_URL=http://library-api.apps.ocp4.itix.fr -e NAMESPACE=library-api -e TARGET_INSTANCE=3scale-saas -e SECRET_NAME=3scale-toolbox -e OIDC_ISSUER_ENDPOINT=https://zync:[REDACTED]@sso.apps.ocp4.itix.fr/auth/realms/3scale-saas -e DISABLE_TLS_VALIDATION=yes -e MOCK_SERVER=https://microcks.apps.ocp4.itix.fr -e MOCK_URL=/rest/Library+API/0.9.0
oc new-build -n library-api --strategy=pipeline --name=library-pipeline https://github.com/nmasse-itix/library-api.git -e PRIVATE_BASE_URL=http://library-api.apps.ocp4.itix.fr -e NAMESPACE=library-api -e TARGET_INSTANCE=3scale-saas -e SECRET_NAME=3scale-toolbox -e OIDC_ISSUER_ENDPOINT=https://zync:[REDACTED]@sso.apps.ocp4.itix.fr/auth/realms/3scale-saas -e DISABLE_TLS_VALIDATION=yes -e MOCK_SERVER=https://microcks.apps.ocp4.itix.fr -e MOCK_URL=/rest/Library+API/0.9.0