Skip to content

Commit

Permalink
Merge branch 'v2-master' into monorepo
Browse files Browse the repository at this point in the history
* v2-master: (639 commits)
  Stop paginationResetPagination from added invalid fields
  Update status_updates.md
  Updates
  Patch the image version in the chart, so reuse-values can work
  Fix upgrade when using --reuse-values
  Avoid need to change service name
  Add test for upgrading with --reuse-values
  Fix for --reuse-values
  Fix helm repo link when geneating an RC (#3369)
  Improve handling of maxed state and observables (#3370)
  Update cf-api-v3.md
  v2/v3 api docs updates
  Fix create-services script used to set CF up for E2E tests
  Only prevent copy & paste in confirm dialog for production
  Fix for bug causing intermittment E2E Test failures on org tests (#3366)
  Allow e2e createService 3 attempts at creating service
  Weekly updaye 18 January (#3365)
  Change log for 2.3.0 (#3364)
  Ensure the loading indicator and the refresh button animated at the correct time. (#3363)
  Fix fetching of stats in app wall for some cases when list is maxed (#3360)
  ...
  • Loading branch information
KlapTrap committed Feb 8, 2019
2 parents 02028fc + 616d773 commit e4cfca8
Show file tree
Hide file tree
Showing 668 changed files with 13,988 additions and 4,859 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,7 @@ src/frontend/favicon.ico
src/frontend/sass/custom.scss
src/frontend/assets/eula.html
src/frontend/assets/logo.png
src/frontend/assets/nav-logo.png
src/frontend/assets/login-bg.jpg
src/frontend/app/custom-import.module.ts
src/frontend/app/custom
Expand Down
19 changes: 11 additions & 8 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,16 +59,19 @@ jobs:
- curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh
script:
- npm run test-backend
- name: E2E Tests
- name: Helm Chart Unit Tests
script:
- "./deploy/ci/travis/helm-chart-unit-tests.sh"
- name: E2E Tests - Long Suite
before_script:
- "./deploy/ci/travis/job-e2e-before_script.sh"
script:
- "./deploy/ci/travis/job-e2e-script.sh longSuite"
- name: E2E Tests - All Other Suite
before_script:
- chmod +x ./deploy/ci/travis/run-e2e-tests.sh
# We will install ffmpeg so we can capture a video of the display as the tests run
- sudo add-apt-repository -y ppa:mc3man/trusty-media
- sudo apt-get -qq update
- "./deploy/ci/travis/job-e2e-before_script.sh"
script:
- "./deploy/ci/travis/fetch-depcache.sh"
- "./deploy/ci/travis/run-e2e-tests.sh video"
- "./deploy/ci/travis/upload-e2e-test-report.sh"
- "./deploy/ci/travis/job-e2e-script.sh fullMinusLongSuite"
notifications:
slack:
secure: s5SFnFKwzfxLrjGR5lJ2AJG1FSWCKtHdQi8K2Kmx5ZhrYL/7P+KLc/ks18WnzCPoy705LbHCBSULcnWbLjqCpnkKxNjsFAyFl2nZZPxBjl2/mHpulbr3gmultDOrMDbmYL4oWPKBlxKResElz9nQwknlLWZ/L94AIx8zuMfRIWdEt1bJBDAQts4fx2D4cIEx0yZUq7JGAKjSiXKR9eDyMWFb+SWw6mvr5WtFM8uq35rPvRVEfm56LIgSuMUpVeYtnYiY2JP7W8iKX0gD+54wAiSXRZiQVCLJq606/TlJo7j8Na9Dn1Q5XDkX3b3XzcgmEZThoO1GFtv3yNYOVxv+50p2tSnc8CT0VEVOYOGJuz17AESZAYK+AyjEmeZmDiroj1czmIq8/ZYKbmvDYSZgGuDcSkQurX/6BPac6ra69WmSQmwv0tS3A/IzDw7X+CuC+3QubQ7GfaiVe25PUU+tRSEDM4PMUJY8QRF5Q+oeN5NjjWmJBqf/ic2TO2xTU1j+qysdqK34qIV1qyVcPMUIiYW+5ltH71qiy05TSvvfGS+oatRBMzINRl3zl2gOV1CKNU801XehRKCx9XDCw5NL1HSx5HD5psOyBRpAMYYBOqa+rv9VAza9MsfpslCoibg5rdrq4rZqqUgRhayNp/LKzlhe/g62+qbGNT+iFuHtB+Y=
61 changes: 61 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,66 @@
# Change Log

## 2.3.0

[Full Changelog](https://github.com/cloudfoundry-incubator/stratos/compare/2.2.0...2.3.0)

This release contains a number of fixes and improvements:

**Fixes:**
- Service instance names should be limited to 50 chars [\#3262](https://github.com/cloudfoundry-incubator/stratos/issues/3262)
- Metrics Charts: CPU usage tooltip should round value [\#3336](https://github.com/cloudfoundry-incubator/stratos/issues/3336)
- Allow apps in "offline while updating" state to be started[\#3332](https://github.com/cloudfoundry-incubator/stratos/issues/3332)
- Manage Users - space table filtering does not work “Search by space name” [\#3329](https://github.com/cloudfoundry-incubator/stratos/issues/3329)
- Make it clearer that you can manage roles for multiple users [\#3250](https://github.com/cloudfoundry-incubator/stratos/issues/3250)
- Register an endpoint arrow misaligned [\#3221](https://github.com/cloudfoundry-incubator/stratos/issues/3221)
- Fix exception when navigating away from the first deploy app step [\#3277](https://github.com/cloudfoundry-incubator/stratos/pull/3277)
- Ensure we don't try to get length of undefined endpoint description [\#3274](https://github.com/cloudfoundry-incubator/stratos/pull/3274)
- Fix null exception after creating a space in an new org [\#3351](https://github.com/cloudfoundry-incubator/stratos/pull/3351)
- Fixes double requests when single cf connected for lists with cf filter [\#3313](https://github.com/cloudfoundry-incubator/stratos/pull/3313)
- Fix auto select of single items in multi filter list [\#3306](https://github.com/cloudfoundry-incubator/stratos/pull/3306)
- Ensure an empty errorResponse gets picked up as a jetstream error [\#3301](https://github.com/cloudfoundry-incubator/stratos/pull/3301)
- Validate entity names locally [\#3296](https://github.com/cloudfoundry-incubator/stratos/pull/3296)
- Application Environment Variables fixes & improvements [\#3286](https://github.com/cloudfoundry-incubator/stratos/pull/3286)
- Hide app vars tab if user is not a space developer [\#3247](https://github.com/cloudfoundry-incubator/stratos/pull/3247)
- Limit card titles to two-lines with ellipsis/fade out [\#3241](https://github.com/cloudfoundry-incubator/stratos/pull/3241)
- Fix CLI info formatting [\#3237](https://github.com/cloudfoundry-incubator/stratos/pull/3237)
- Add Route: Use correct label for submit button [\#3231](https://github.com/cloudfoundry-incubator/stratos/pull/3231)
- Fix for cancel broken on add route [\#3228](https://github.com/cloudfoundry-incubator/stratos/pull/3228)
- Fix display of generic error bar [\#3214](https://github.com/cloudfoundry-incubator/stratos/pull/3214)
- Only show + icon when we have at least one connected CF [\#3211](https://github.com/cloudfoundry-incubator/stratos/pull/3211)
- Cannot deploy application from folder upload [\#3188](https://github.com/cloudfoundry-incubator/stratos/pull/3188)
- Fix issue where only first 100 services were shown in service marketplace [\#3161](https://github.com/cloudfoundry-incubator/stratos/pull/3161)
- Fix marketplace provisioning for asynchronous services [\#3086](https://github.com/cloudfoundry-incubator/stratos/pull/3086)

**Improvements:**
- App Deploy: Add Public GitLab Repository support [\#3239](https://github.com/cloudfoundry-incubator/stratos/pull/3239)
- Add a routes list to the CF tabs, Routes Refactor & Route Bug Fixes [\#3292](https://github.com/cloudfoundry-incubator/stratos/pull/3292)
- Add deployment info for apps deployed via docker & fix info for local/archive apps [\#3291](https://github.com/cloudfoundry-incubator/stratos/pull/3291)
- Add service plan list to service pages [\#3275](https://github.com/cloudfoundry-incubator/stratos/pull/3275)
- Add Org and Space status bar to Org/Space Cards [\#3265](https://github.com/cloudfoundry-incubator/stratos/pull/3265)
- Add service provider name to marketplace service card [\#3268](https://github.com/cloudfoundry-incubator/stratos/pull/3268)
- Add link to dashboard in service instance table [\#3267](https://github.com/cloudfoundry-incubator/stratos/pull/3267)
- Add confirmation dialog to `Restage` app [\#3263](https://github.com/cloudfoundry-incubator/stratos/pull/3263)
- Add support for JSON Schemas when binding services to applications [\#3050](https://github.com/cloudfoundry-incubator/stratos/pull/3050)
- Scalability Improvements: Handle large number of apps in cf dashboards [\#3212](https://github.com/cloudfoundry-incubator/stratos/pull/3212)
- Support prometheus-boshrelease as a metrics endpoint [\#3202](https://github.com/cloudfoundry-incubator/stratos/pull/3202)
- Show better error message on login screen when account locked [\#3235](https://github.com/cloudfoundry-incubator/stratos/pull/3235)
- Helm Chart Service port configuration improvements [\#3264](https://github.com/cloudfoundry-incubator/stratos/pull/3264)
- List Multifilter Improvements [\#3270](https://github.com/cloudfoundry-incubator/stratos/pull/3270)
- Stratos can now be deployed as a CF App using docker image [\#3294](https://github.com/cloudfoundry-incubator/stratos/pull/3294)
- Create stable docker image [\#3307](https://github.com/cloudfoundry-incubator/stratos/issues/3307)
- About Page Title customization support [\#3356](https://github.com/cloudfoundry-incubator/stratos/pull/3356)
- Make the table multi actions more obvious [\#3251](https://github.com/cloudfoundry-incubator/stratos/pull/3251)
- Use SHA256 to compare SSH public key fingerprint [\#3249](https://github.com/cloudfoundry-incubator/stratos/pull/3249)
- Show refresh button for latest modified application lists [\#3213](https://github.com/cloudfoundry-incubator/stratos/pull/3213)
- Improve focus & tabbing [\#3288](https://github.com/cloudfoundry-incubator/stratos/pull/3288)
- Tidy up CLI login info [\#3269](https://github.com/cloudfoundry-incubator/stratos/pull/3269)
- Reduce size of Docker All-in-one image [\#3261](https://github.com/cloudfoundry-incubator/stratos/pull/3261)
- Remove global manage apps link [\#3259](https://github.com/cloudfoundry-incubator/stratos/pull/3259)
- Add user has roles filter to users tables [\#3258](https://github.com/cloudfoundry-incubator/stratos/pull/3258)
- Deploy App: Add notification toast [\#3242](https://github.com/cloudfoundry-incubator/stratos/pull/3242)
- Update app instance cell data when scaling up [\#3133](https://github.com/cloudfoundry-incubator/stratos/pull/3133)

## 2.2.0

[Full Changelog](https://github.com/cloudfoundry-incubator/stratos/compare/2.1.2...2.2.0)
Expand Down
4 changes: 2 additions & 2 deletions Gopkg.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 12 additions & 0 deletions build/customize-build.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
// Apply any customizations
// Symlink customizations of the default resources for Stratos
gulp.task('customize', function (cb) {
doShowVersions()
doCustomize(false);
doGenerateIndexHtml(true);
cb();
Expand All @@ -48,6 +49,17 @@
cb();
});

function doShowVersions() {
console.log('Node Version: ' + process.versions.node || 'N/A');
try {
var response = execSync('npm --v');
var npmVersion = response.toString().trim();
console.log('NPM Version : ' + npmVersion || 'N/A');
} catch (e) {
console.log('NPM Version : N/A');
}
}

function doCustomize(forceDefaults, reset) {
var msg = !forceDefaults ? 'Checking for and applying customizations' : 'Removing customizations and applying defaults';
var msg = !reset ? msg : 'Removing all customizations';
Expand Down
10 changes: 9 additions & 1 deletion deploy/Dockerfile.all-in-one
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Docker build for all-in-one Stratos
FROM splatform/stratos-aio-base:opensuse
FROM splatform/stratos-aio-base:opensuse as builder

COPY --chown=stratos:users *.json ./
COPY --chown=stratos:users gulpfile.js ./
Expand All @@ -20,6 +20,14 @@ RUN npm install \
RUN CERTS_PATH=/home/stratos/dev-certs ./generate_cert.sh \
&& chmod +x jetstream

# use --target=aio to build All-in-one image
FROM splatform/stratos-bk-base:opensuse
COPY --from=builder /home/stratos/deploy/db /src/deploy/db
COPY --from=builder /home/stratos/dev-certs /srv/dev-certs
COPY --from=builder /home/stratos/ui /srv/ui
COPY --from=builder /home/stratos/jetstream /srv/jetstream
COPY --from=builder /home/stratos/config.properties /srv/config.properties

EXPOSE 443

# Need to be root to bind to port 443
Expand Down
75 changes: 74 additions & 1 deletion deploy/all-in-one/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ docker build -f deploy/Dockerfile.all-in-one . -t stratos-aio

> Note: The Dockerfile for all-in-one is in the `deploy` folder and not the `deploy/all-in-one` folder.
> Note: If you are using Docker for Macand you get an error 137 when building, you should increase the memory available to Docker (via Preferences > Advanced) and try again.
> Note: If you are using Docker for Mac and you get an error 137 when building, you should increase the memory available to Docker (via Preferences > Advanced) and try again.
Bring up the container with:

Expand All @@ -32,3 +32,76 @@ Stratos should now be accessible at the following URL:
https://localhost:4443

You will be presented with the Stratos Setup welcome screen - you will need to enter your UAA information to configure Stratos. Once complete, you will be able to login with your credentials.

## Pushing the All-In-One Docker Image to Cloud Foundry

The All-In-One Docker Image can be pushed to Cloud Foundry.

Firstly, build the image and push it to a Docker registry, so that it is available to Cloud Foundry, e.g. to build and push to Docker Hub, in the project root directory run:

```
build/store-git-metadata.sh
docker build -f deploy/Dockerfile.all-in-one . -t MY-DOCKER-ORG/stratos-aio:latest
docker push MY-DOCKER-ORG/stratos-aio:latest
```

Where `MY-DOCKER_ORG` is your Docker Hub organization.

You can now push this image directly to Cloud Foundry with:

```
cf push stratos --docker-image MY-DOCKER-ORG/stratos-aio:latest
```

The log output of the push command will include the URL where the Stratos application can be accessed in a browser, e.g.

```
> cf push stratos --docker-image MY-DOCKER-ORG/stratos-aio:latest
Creating app stratos in org e2e / space e2e as admin...
OK
Creating route stratos.local.pcfdev.io...
OK
Binding stratos.local.pcfdev.io to stratos...
OK
Starting app stratos in org e2e / space e2e as admin...
Creating container
Successfully created container
Staging...
Staging process started ...
Staging process finished
Exit status 0
Staging Complete
Destroying container
Successfully destroyed container
1 of 1 instances running
App started
OK
App stratos was started using this command `./jetstream `
Showing health and status for app stratos in org e2e / space e2e as admin...
OK
requested state: started
instances: 1/1
usage: 256M x 1 instances
urls: stratos.local.pcfdev.io <-- URL
last uploaded: Mon Dec 3 03:12:47 UTC 2018
stack: cflinuxfs2
buildpack: unknown
state since cpu memory disk details
#0 running 2018-12-03 03:12:54 AM 0.0% 0 of 256M 0 of 512M
```

> Note: In this example we are pushing with the application name `stratos`
> Note: By default the All-in-one image has SSL Validation disabled when authenticating with Cloud Foundry and the UAA - this allows it to work out of the box with environments like PCF Dev. If this is not the behavior you desire, edit the file `deploy/all-in-one/config.all-in-one.properties` and change the `SKIP_SSL_VALIDATION` as desired before building and publishing the image.
3 changes: 2 additions & 1 deletion deploy/all-in-one/config.all-in-one.properties
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,5 @@ CF_CLIENT=cf
ALLOWED_ORIGINS=http://nginx
SESSION_STORE_SECRET=wheeee!
ENCRYPTION_KEY=B374A26A71490437AA024E4FADD5B497FDFF1A8EA6FF12F6FB65AF2720B59CCF
STRATOS_DEPLOYMENT_DOCKER_AIO=true
STRATOS_DEPLOYMENT_DOCKER_AIO=true
SKIP_SSL_VALIDATION=true
1 change: 1 addition & 0 deletions deploy/ci/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Concourse pipelines
5 changes: 1 addition & 4 deletions deploy/ci/automation/cfallinonetest.sh
Original file line number Diff line number Diff line change
Expand Up @@ -61,10 +61,7 @@ set +e
# Kill the docker container
docker kill $CONTAINER_ID

# Pause the PCF Dev instance for now
echo "Suspending PCF Dev"
cf pcfdev suspend
cf pcfdev status
echo "All done"

# Return exit code form the e2e tests
exit $RET
14 changes: 9 additions & 5 deletions deploy/ci/automation/cfdockercomposetest.sh
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,13 @@ pushd deploy
docker-compose -f docker-compose.development.yml up -d
popd

echo "Docker Containers"
docker ps

# Wait for the UAA to become available
echo "Waiting 30 seconds for UAA to start up ..."
sleep 30

# Get the E2E config
rm -f secrets.yaml
curl -k ${TEST_CONFIG_URL} --output secrets.yaml
Expand All @@ -44,7 +51,7 @@ rm -rf node_modules
npm install

# Run the E2E tests
"$DIRPATH/runandrecord.sh" https://localhost:443
"$DIRPATH/runandrecord.sh" https://127.0.0.1
RET=$?

set +e
Expand All @@ -62,10 +69,7 @@ fi
docker-compose -f docker-compose.development.yml down
popd

# Pause the PCF Dev instance for now
echo "Suspending PCF Dev"
cf pcfdev suspend
cf pcfdev status
echo "All done"

# Return exit code form the e2e tests
exit $RET
8 changes: 3 additions & 5 deletions deploy/ci/automation/cfpushtest.sh
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,8 @@ SUITE=""
if [ "$2" == "sso" ] || [ "$3" == "sso" ] ; then
echo " SSO_LOGIN: true" >> $MANIFEST
SUITE=" --suite=sso"
# Run the helper script to make sure the CF client is set up correctly
"$DIRPATH/init-pcfdev-uaa.sh"
fi

if [ -n "${DB_TYPE}" ]; then
Expand Down Expand Up @@ -141,11 +143,7 @@ fi

set +e

# Pause the PCF Dev instance for now
sleep 5
echo "Suspending PCF Dev"
cf pcfdev suspend
cf pcfdev status
echo "All done"

# Return exit code form the e2e tests
exit $RET
25 changes: 4 additions & 21 deletions deploy/ci/automation/cfutils.sh
Original file line number Diff line number Diff line change
Expand Up @@ -60,33 +60,16 @@ if [ -z "${TEST_CONFIG_URL}" ]; then
exit 1
fi

echo "Checking PCF Dev status"
FULL_STATUS=$(cf pcfdev status)
echo "$FULL_STATUS"

STATUS=$(echo "$FULL_STATUS" | head -n 1)
if [ "$STATUS" == "Not Created" ]; then
echo "PCF DEV not created... starting"
cf pcfdev start -m 10240 -c 3
else if [ "$STATUS" == "Running" ]; then
echo "PCF DEV is already running"
else if [ "$STATUS" == "Stopped" ]; then
echo "PCF DEV stopped... starting"
cf pcfdev start
else if [ "$STATUS" == "Suspended" ]; then
echo "Resuming PCF DEV"
cf pcfdev resume
else
echo "Stopping and starting PCF DEV"
cf pcfdev stop
cf pcfdev start
fi
fi
fi
if [ "$STATUS" != "Running" ]; then
echo "PCF Dev is not running... aborting"
exit 1
fi

# Wait 5 seconds for PCFDev
sleep 5

cf login -a https://api.local.pcfdev.io --skip-ssl-validation -u admin -p admin -o e2e -s e2e
cf apps

Expand Down
6 changes: 6 additions & 0 deletions deploy/ci/automation/check-stratos.sh
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,12 @@ echo "consoleUsers:" > ${SECRETS}
echo " admin:" >> ${SECRETS}
echo " username: $USERNAME" >> ${SECRETS}
echo " password: $PASSWORD" >> ${SECRETS}
echo " nonAdmin:" >> ${SECRETS}
echo " username: $USERNAME" >> ${SECRETS}
echo " password: $PASSWORD" >> ${SECRETS}
echo "endpoints:" >> ${SECRETS}
echo " cf:" >> ${SECRETS}
echo " name: none" >> ${SECRETS}
echo "headless: true" >> ${SECRETS}

set +e
Expand Down
Loading

0 comments on commit e4cfca8

Please sign in to comment.