2018 Releases

v3.70 - 01 March 2019

Release v3.70 contains a couple of bug fixes and a new notification resource.

For Everyone:
  • Fix compatibility problem with using ExternalObject resources against a Minio S3 server.
  • Addition of a new notification resource that will allow more flexible management of user notifications.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

No known issues.

v3.69 - 15 February 2019

Release v3.69 is essentially for minimal bugfixes

For Everyone:
  • Fix regression when registering via exoscale coupon
For Dave
  • Fix for incorrect metadata reference
  • Use kebab-case for resource attributes

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

No known issues.

v3.68 - 01 February 2019

Release v3.68 improves the metadata for use in autogenerated forms and reorganizes some UI features

For Everyone:
  • Welcome page and sidebar menu is cleaned from CIMI references
  • Links to API documentation point to internal documentation
  • Deployment card link is improved
  • UI is now embedded into the GSSC Wordpress environment via an iframe element
  • A confirmation message is added before stopping or deleting a deployment
For Dave
  • Update of the metadata for use in autogenerated forms.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

No known issues.

v3.67 - 18 January 2019

Release v3.67 fixes the known issues from the previous release and improve the dataset information description.

For Everyone:
  • Fix regression when downloading reports
For Dave
  • Update of schema of the Deployment resource to save dataset information for data objects.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

No known issues.

v3.66 - 21 December 2018

Release v3.66 improves the deployments workflow and user interface when datasets are included. It also introduces public external objects

For Everyone:
  • UI improvements regarding datasets information to deployments
  • External objects can be made public and downloadable
For Dave
  • Add datasets to deployment service offers
  • Support alpine for the bootstrap (needed primarily for containers).

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

No known issues.

v3.65 - 07 December 2018

Release v3.65 introduces data volume options on deployments and improvements on S3 objects management

For Everyone:
  • S3 objects metadata are collected and stored in the resource
  • Deleting the last S3 object of a bucket also deletes the bucket
  • Better error handling when interacting with S3
  • Full support for data volume options
  • Mounting volumes in containers feature
  • Data page implements a full text search
  • Deployment dialog is refined (progress as steps and jobs are detailled)
  • use of SlipStream state machine state only when in started/stopped states

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

No known issues.

v3.64 - 23 November 2018

Release v3.64 focused on introducing new CIMI resource for deployments and upgrade of clojurescript libraries.

For Everyone:
  • Implementation of an initial set of deployment resources that will allow the CIMI modules to be deployed
  • Added events on deployment state change and on execution state change
For Dave:
  • Module actions for the application panel
  • The module migration script is updated to comply with the latest changes of the schema.
  • Fixed compiler warnings coming from latest ClojureScript release (1.10.439).
  • Upgrade to the latest shadow-cljs (2.7.2) and closure (v20181028) releases.
  • Moved metadata utilities to make them accessible to other submodules.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

No known issues.

v3.63 - 9 November 2018

Release v3.63 introduced the Metadata resource, added improvements on UI and bugfixes in some resources schema.

For Everyone:
  • Upgrade of datepicker in the UI
  • Added copy to clipboard
  • Appstore new UI based on deployment template and cimi deployment
  • Visualization for Metadata
  • Fix external-object authorizations for actions like Download
  • Attributes added (acceptProtocols and acceptContentTypes) to the modules resources
  • Attribute added (data) to deployment resource
  • Update on the schema for the ServiceOffer resource to allow both a fully-qualified connector identifier and the current abbreviated one.
For Dave:
  • Using shadow-cljs for dependencies
  • The latest version of the CIMI specification has introduced “parent”, therefore fixes were required when this introduced conflicts
  • Fix in email resource schema
  • Automatic resource metadata generation (using ephemeral storage)

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

No known issues.

v3.62 - 26 October 2018

Release v3.62 focused on bugfixes, cleaning up of dead/deprecated code and update of the Slipstream API documentation

For Everyone:
  • Removal of Electron as part of the UI
  • Removal of deprecated ‘vms’ resource
  • Implementation of the CIMI ResourceMetadata resource
  • Update of API documentation (https://ssapi.sixsq.com) e.g vm, storage, metering and the new Quota resource
  • Fixed bug when displaying the reset password dialog
For Dave:
  • Upgrade of clojure to 1.10.0-beta3.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

No known issues.

v3.61 - 12 October 2018

Release v3.61 focused on improving the UI (reset password, chart rendering )and upgrading the features for CIMI deployments

For Everyone:
  • Fix Charts rendering in UI
  • CIMI deployments
  • Add a reset password link next to “Login with Nuvla Account”
For Dave:
  • For Docker connector, publish endpoint instead of internal IP
  • Improvements regarding CIMI deployment ports mappings for container

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

No known issues.

v3.60 - 28 September 2018

Release v3.60 focused on improving the reliability of the SlipStream jobs and the performance of some WebUI pages

For Everyone:
  • Improvement for Deployments as CIMI resource
  • WebUI Improved performances (dashboard refresh, animations for charts)
  • WebUI page for NuvlaBox (pagination added)
  • Credential api key secret bug fix in claims edition
For Dave:
  • Improved monitoring of VMs, including error handling
  • Docker connnector now part of the upgrade process

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

No known issues.

v3.59 - 14 September 2018

Release v3.59 has focused on enhanced performance of the WebUI and the introduction to a docker connector

For Everyone:
  • Fix missing display of reports for users with long usernames
  • Added about / welcome pages
  • Enhanced display for metric charts
For Bob :
  • Better display of billable resource
  • Updated filter on the Usage page
For Dave:
  • Additions to the Administrator Guide regarding “How to link Authentications to a User Account”
  • Added priority support for job resource
  • Support of a disabledMonitoring attribute for cloud connectors (performance optimisation)
  • Implementation of a docker connector
  • Fix on the describe instance command for connectors

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

No known issues.

v3.58 - 31 August 2018

Release v3.58 has focused on the reliability of the resource usage data and its visualization.

For Everyone:
  • Partially fix a problem with showing the usage data (Disk size)
  • Optimize database for deletions
  • Have Exoscale compatible with CIMI deployments
For Bob:
  • Have a distinction in usage between compute and S3 storage
  • Fix bug on UI for deployment panel causing blank page

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

No known issues.

v3.57 - 17 August 2018

Release v3.57 has focused on improving the reliability of the resource usage data and its visualization. A number of bug fixes and improvements related to the usage data (e.g. job engine to collect information) have also been applied.

For Everyone:
  • Partially fix a problem with showing the deployment reports.
  • Fix user identifier issue when registering using OIDC servers.
  • Fix a problem with the visualization of errors when blank values are provided in the login forms.
  • Improve the loading times and accessibility support in the WebUI interface.
  • Fix occasional unresponsive pages when viewing resource details with the WebUI.
  • Force consistent initialization state of the WebUI to avoid spurious errors being displayed.
For Bob:
  • Improve the reliability of the resource usage data.
  • Improve the prototype visualization of this resource usage data in the WebUI.
  • Add prototype metering resources for object storage.
For Dave:
  • Allow the administrator to configure authentication of users directly with OIDC tokens.
  • Fixes for deadlocked threads when treating jobs in the job engine.
  • Support the SIGUSR1 signal in the job engine to retrieve thread stacktraces.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

No known issues.

v3.56 - 3 August 2018

Release v3.56 has focused on improving the resource monitoring system within SlipStream to improve its coverage, precision, and reliability. In parallel, the usage dashboard has been improved to allow users to search, visualize, and download the usage information more efficiently.

In addition, a number of bugs were fixed and other enhancements have been rolled in.

For Everyone:
  • The usage dashboard available from the newer web interface has been significantly enhanced to provide better search (and sort) capabilities, to view data more efficiently, and to allow download of the report data.
  • As a result of the work on the usage dashboard, the newer web interface has been cleaned up, with more visual consistency between elements and many small interaction bugs corrected.
  • Fixed a bug that prevented the deployment reports from being shown in the web interfaces.
  • Fixed that caused user registration with a username/password to fail.
For Bob:
  • Recovery of quota information from cloud service providers (starting with Exoscale) has been put in place to allow synchronization between SlipStream and provider quotas.
  • Fixed the schema of the quotas to allow for zero limits, effectively blocking access to a particular resource.
  • Metering has been improved to ensure that the correct people have access to the records and that the information is more precise.
For Dave:
  • The logging for the job executor has been significantly improved. It now uses its own log file (rather than logging to syslog) and all messages have a consistent format and reasonable logging level.
  • Support for both MITREid server and token authentication has been improved to allow a shared configuration of both authentication methods.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required.

Known issues

  • The login and sign up dialogs are not properly centered from the SlipStream welcome page. See GitHub Issue 789 for a description of the problem and the fix.

v3.55 - 21 July 2018

Two features dominated the work for this release:

  • Enhancing the authentication process to allow users to authenticate with multiple methods for a single account and
  • Refining the monitoring infrastructure to provide more accurate and better overviews of resource usage.

In addition, a number of bugs were fixed and other enhancements have been rolled in.

For Everyone:
  • Fix a problem where external users making use of shared credentials could not terminate deployments.
  • Allow for user registration with an Exoscale voucher that automatically creates an Exoscale account and configures the Nuvla account for all Exoscale regions.
  • Change external authentication via MITREid (OIDC) servers to use unique identifier rather than the MITREid username.
  • Fix the user registration workflow for browser-based clients.
  • Fix an issue where specifying multiple SSH keys on an OpenStack deployment could prevent the key pair from being created.
  • Simplify the user login and user sign up modals.
For Clara:
  • Add full text search capabilities for the description attribute of CIMI resources. (Alpha feature subject to change.)
  • Add CIMI-based modules (images, components, applications) to the server. (Alpha feature subject to change.)
For Bob:
  • Add the concept of “credential managers” to allow for managers to have an overview of all resource usage related to the credential.
  • Add disk size monitoring for virtual machine resources.
For Dave:
  • Enhance the Exoscale connector to use a separate parameter for the root disk size, rather than relying on separate images with different default disk sizes.
  • Fix a minor (and rare) problem with the job engine where there was a missing format in exception handling that affected the logs.
  • Fix a problem with the handling of credentials when creating the monitoring resources for virtual machines.
  • Allow multiple identities per user account. (See the migration instructions below concerning this change.)
  • The self-registration template is not added by default. This must be added by the administrator to authorize self-registration of users.
  • The problem with the slow start of the CIMI server was caused by insufficient entropy. It is recommended to always run the “haveged” service to avoid this problem. This has been added to the standard SlipStream installation.
  • Multiple fixes and additions to the WebUI interface.

Alice, Bob, Clara, and Dave can be found here.

Migration

Migration of external users is required. See the usage instructions in the README on GitHub.

Known issues

  • The deployment reports are not shown in the standard UI. See GitHub Issue 181 for resolution of this.

v3.54 - 30 June 2018

This release focused on improving the performance and reliability of the SlipStream server. This included identifying and fixing problems with the monitoring subsystem, properly catching exceptions to ensure relevant error messages for users, and improving the startup time for the CIMI server.

For Everyone:
  • Improve monitoring subsystem to ensure that monitoring information for applications is not lost.
  • Streamlined user registration with an Exoscale coupon. Creates accounts on SlipStream and Exoscale and automatically includes credentials in SlipStream.
  • Ensure the user receives relevant error messages and status codes by catching exceptions within the server related to invalid input and resource conflicts.
For Bob:
  • Fix UI issues for resource usage that would result in a blank page being presented.
For Dave:
  • Updated workflow to ensure that all user information is included in user registrations from OpenID Connect (OIDC) identity providers based on MITREid.
  • Provide simple job statistics on the WebUI to identify problems with the job subsystem.
  • The CIMI server was starting slowly because of insufficient entropy for cryptographic actions. The SlipStream installation script now installs the “haveged” daemon. This is recommended for all installations.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required for this release.

Known issues

  • The self-registration template is not added by default as before. The sign up form will not be visible in the WebUI, unless it is added manually.
  • The CIMI server takes an extremely long time to start. The cause of this is being investigated.

v3.53 - 16 June 2018

The main changes for this release concern the user authentication and registration features. Those people using external identity providers must first register with SlipStream; previously accounts were created automatically. This release expands support for OIDC servers and lays the groundwork for linking multiple authentication methods to a single account.

For Everyone:
  • Users identified via external identity providers must now explicitly register with SlipStream before being able to log into the service.
  • OpenID Connect (OIDC) support has been expanded to support the MITREid Connect implementation (in addition to the existing Keycloak support), allowing more external identity providers to be used.
  • Links to the Terms and Conditions document have been updated to those reflecting changing coming from the recent GDPR legislation.
For Alice:
  • Fix an issue for the ss-module-download utility that caused it to fail when the module contained non-ASCII characters.
  • Allow the ss-module-download utility to continue when errors (e.g. access permissions) occur.
For Dave:
  • The OpenStack connector now contains an option to use and reuse floating IP addresses from an allocated pool. (Patch provided by IFB.)
  • Fix issue where the NuvlaBox connector description would prevent the server from starting.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required for this release.

Known issues

  • The self-registration template is not added by default as before. The sign up form will not be visible in the WebUI, unless it is added manually.
  • The CIMI server takes an extremely long time to start. The cause of this is being investigated.

v3.52 - 2 June 2018

This releases fixes the known issues from the previous release and refactors the authentication processes to make them more robust and more easily maintainable. For end-users, the primary changes are that the CYCLONE authentication method is no longer supported and SlipStream accounts are not created automatically for external logins (e.g. via GitHub or OpenID Connect).

For Everyone:
  • Remove CYCLONE authentication support. Users who were using that authentication method must use another one (e.g. username/password).
  • Fix display of version in footer.
For Dave:
  • Refactor authentication processes to use explicit callback resource.
  • Remove test dependencies leaking into production deployments.
  • Ensure that deployment-specific API key/secret credentials are cleaned up even when a deployment is aborted.
  • Fix job engine to use correct database index.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is required for this release.

Known issues

  • The parameter description for the NuvlaBox connector (if installed) prevents the SlipStream server from starting (see GitHub issue 165).

v3.51 - 18 May 2018

This is a major release that updates the version of Elasticsearch and changes the mapping of resources to Elasticsearch indices. This impacts mainly SlipStream administrators. All upgrades require a full migration of the database.

For Dave:
  • Allow different database bindings to be configured for the server.
  • Provide alpha release for Elasticsearch binding based on its REST API.
  • Simplify dependencies by taking SlipStream version from code rather than the service configuration.
  • Upgrade to Elasticsearch 6, separating indices for resources and providing explicit mappings. This should improve performance and make management easier.
  • Change session resource expiry date to make it possible to clean up expired sessions with simple Elasticsearch queries.
  • Allow default ordering of events to be overridden through the API.

Alice, Bob, Clara, and Dave can be found here.

Migration

The version requires a full migration of the Elasticsearch database.

Both the old and new Elasticsearch clusters must be accessible during the migration process. You must run the upgrade process from a machine that can access both the old and new Elasticsearch clusters. Normally, this is the machine running the SlipStream services and we refer to this as the “SlipStream machine” below.

If you’ve not done so already, install a new Elasticsearch 6 cluster. Use the health checks to ensure that the cluster is functioning correctly before starting the migration process. This must be on a different machine from the one running your current production Elasticsearch cluster.

The first step is to download and setup the migration tools.

  • On the SlipStream machine, install the Leiningen build tool. This will be used to download the dependencies required by the migration tools and then to run them.
  • Ensure that Leiningen works by running lein --help. If it doesn’t work, check the troubleshooting information on the Leiningen website.
  • Download the SlipStreamMigration tarball that contains the migration tools.
  • Unpack these tools in a convenient location on the SlipStream machine. The command to use is tar zxf SlipStreamMigration-3.51.tar.gz.
  • From the root of the unpacked tarball, execute the command lein with-profile +dbinit run -- --help. Apologies for the tortured syntax.

This last command should download a large number of dependencies and end with usage information for the command. If it does not, verify that you are in the correct directory and that everything has been setup correctly. Contact support if you cannot resolve the issues.

The next step is to initialize the database with the indices and mappings for the SlipStream resources. This must be done before any documents are migrated from the old database. Execute the following commands:

$ export ES_HOST=es6-01.example.com
$ export ES_PORT=9300
$ lein with-profile +dbinit,+community,+enterprise run

Replace the hostname with your Elasticsearch 6 host. The “+community” and “+enterprise” initialize the database for the Community Edition and Enterprise Edition cloud connectors, respectively. Leave out those terms if they are not appropriate for your SlipStream installation.

Review the output from the dbinit tool. You should see the successful initialization of a large number of CIMI resources. You can ignore the zookeeper error concerning the initialization of the Job resource.

You can check the initialization by looking at the indices in Elasticsearch:

$ curl "http://$ES_HOST:9200/_cat/indices?v"

This should return a listing like the following:

health status index                                  uuid                   pri rep docs.count docs.deleted store.size pri.store.size
green  open   slipstream-email                       Vy-Jjm4xQZaSyqTR3efRXQ   3   0          0            0       690b           690b
green  open   slipstream-cloud-entry-point           tSxKHYdARhC4oZMZce-sPA   3   0          1            0      7.2kb          7.2kb
green  open   slipstream-session-template            N4tSpCoASRKRmSUG7ktMxg   3   0          1            0     10.4kb         10.4kb
green  open   slipstream-service-attribute-namespace rbQfhMpUQOy0OwvSGnRDQw   3   0          0            0       690b           690b
green  open   slipstream-metering                    db9dnHslR-eHPDthFQVsVA   3   0          0            0       690b           690b
green  open   slipstream-service-benchmark           yqGaNj78TKaXtucljKQ7mA   3   0          0            0       690b           690b
green  open   slipstream-service-attribute           78PBD90cRRWVqr0d0URz5w   3   0          0            0       690b           690b
green  open   slipstream-configuration               9vsI538_QnCScw-RF4LNbQ   3   0          1            0     18.9kb         18.9kb
green  open   slipstream-job                         Iu6e2DGWQU2TZAntV_Ukxw   3   0          0            0       690b           690b
green  open   slipstream-session                     J5CGY_SyREOTY9Rhm1JPOg   3   0          0            0       690b           690b
green  open   slipstream-virtual-machine             s9b6i0tbRFO45S4UT_Vkcg   3   0          0            0       690b           690b
green  open   slipstream-virtual-machine-mapping     1X_Fn6n2RhiKLgXdnMGzjw   3   0          0            0       690b           690b
green  open   slipstream-user                        G9362RHRRgmjR_ZrrLvvKA   3   0          0            0       690b           690b
green  open   slipstream-connector                   DMfNpYSATKKTbDFMzUISfQ   3   0          0            0       690b           690b
green  open   slipstream-quota                       PWxlyO-zRb-c0R8EeQT8Aw   3   0          0            0       690b           690b
green  open   slipstream-callback                    kqxw-TdaS2ORXg7_XuImsA   3   0          0            0       690b           690b
green  open   slipstream-credential                  gQ-Ti6OnTKuKRpfoGxOBgw   3   0          0            0       690b           690b
green  open   slipstream-service-offer               Qmoxk_5qT-GtcuJVbG1bVw   3   0          0            0       690b           690b
green  open   slipstream-user-param                  Zxq2XAYjRyy9xnk-i7VTPw   3   0          0            0       690b           690b
green  open   slipstream-event                       K5dYKP1nRkGWLAA6GKzAmw   3   0          0            0       690b           690b
green  open   slipstream-external-object             oCe09WZeQb2jnL0_-iB3DQ   3   0          0            0       690b           690b

The database should be empty except for the CloudEntryPoint, a SessionTemplate, and a Configuration. This command can be rerun without problems if you have trouble.

To avoid conflicts with the migration, we will remove those documents that have been created automatically. Execute the following commands:

$ curl -XDELETE http://$ES_HOST:9200/slipstream-cloud-entry-point/_doc/cloud-entry-point?pretty=true
$ curl -XDELETE http://$ES_HOST:9200/slipstream-session-template/_doc/internal?pretty=true
$ curl -XDELETE http://$ES_HOST:9200/slipstream-configuration/_doc/slipstream?pretty=true

This removes those autogenerated documents, which will be replace during the migration process.

Now that the new Elasticsearch database has been prepared, you are ready to migrate documents from the old database to the new one. To ensure that you have a coherent, all of the SlipStream services must be shutdown. Verify that this is the case.

The organization of the documents in Elasticsearch has changed. In ES5, all the document types were stored in a single index. In ES6, each document type is in a separate index. Because of this, the migration of documents from the old database to the new one will be done document type by document type.

To reduce the repetition, you may want to create a script to make the process easier:

#!/bin/bash -x

DOC_TYPE=$1

if [ -n "$DOC_TYPE" ]; then
  time lein with-profile +dbcopy run -- \
       --src-host es5-01.example.com \
       --src-type $DOC_TYPE \
       --dest-host es6-01.example.com \
       --dest-index slipstream-$DOC_TYPE
fi

Be sure to replace the hostnames in the script with your hostnames. You can then just provide the type argument to migrate a given class of documents. We call this script dbcopy.sh and set execution permission with chmod a+x dbcopy.sh.

Now to migrate the user resources, do the following:

$ ./dbcopy.sh user

When the command finishes, you should see a message like the following:

18-05-15 07:14:04 ...  - finished copy documents from ["resources-index" "user" :_search] - [788 788 788]

showing the number of documents copied. (The script will also show the elapsed time.) The numbers in the tuple should all be the same.

Repeat this process for all of the resource types in your listing of Elasticsearch indices above. You can skip some document types: for example, do not copy the “session” resources if you do not want to maintain open sessions or do not copy the “metering” resources if you do not care about past usage information.

Once the migration is complete, you can upgrade your SlipStream installation and configure the services to use the new database.

Known issues

v3.50 - 30 April 2018

This is primarily a bug fix release that makes improvements for SlipStream administrators.

For Everyone:
  • Fix resource usage page calculations to provide correct values
  • Allow displaying more than 10 cloud names in the WebUI on the resource page
  • Improved documentation regarding data management with ExternalObject resources
  • Fix bug with state management when uploading ExternalObject resources
  • Correct the ACLs on run reports
For Dave:
  • Ensured presence of Python 2 in generated images.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is necessary.

Known issues

No known issues.

v3.49 - 13 April 2018

External Object now has two types: generic and report. The latter one is used for storing the deployment reports. The generic one can be used by anyone willing to store data on clouds’ Object Store. For details see.

For Everyone:
  • Fix access to a metering resource details by its identifier
  • CIMI connector collection is now searchable by users
  • Fix User interface issues related to long usernames in logout button, breadcrumbs, and session information panel.
  • CIMI filter interface: fix cursor position into input when using controlled value
  • Usage page: default period, sorting of results
  • Login button: separated from dropdowns for federated logins
For Dave:
  • Fix number of taken entries in zookeeper which should always be equal to number of threads used by job executors
  • Fix deletion of api key/secret
  • Fix User registration callback when validating an email
  • Service configuration is dynamically refreshed on Configuration singleton from backend
  • Specify the version of nginx to be installed (in order to prevent a conflict with configuration files)

Alice, Bob, Clara, and Dave can be found here.

Migration

This release moves the configuration of the S3 backend for reports from /opt/slipstream/server/.credentials/object-store-conf.edn file to the configuration/slipstream resource.

The following migration steps are required.

  1. After the upgrade of the packages make sure that elasticsearch service is running: systemctl start elasticserach

  2. Create the following JSON file:

    # cat configuration-slipstream.edn
    {
      :id "configuration/slipstream"
      :slipstreamVersion "3.49"
      :reportsObjectStoreBucketName "<bucket-name>"
      :reportsObjectStoreCreds      "credential/<CHANGE-ME-UUID>"
      }
    

    The value for <bucket-name> should either be taken from your previous configuration file /opt/slipstream/server/.credentials/object-store-conf.edn (where it is defined as :reportsBucketName) or you can define a new name. Note, that according to the S3 standard, the bucket name should be unique on the S3 endpoint.

    The value for :reportsObjectStoreCreds should be the URI of the credential that you intend to be used for storing the reports of the SlipStream users. Because each credential refers to a connector, you have to make sure that the connector (and, hence, IaaS cloud) behind the credential implements and actually exposes S3 endpoint. All the connectors were updated to provide an extra configuration option :objectStoreEndpoint. It has to be set to a valid S3 endpoint before the persistence of the user deployment reports can be done.

  3. After the configuration file is ready, run the following command to actually configure the service:

    # ss-config configuration-slipstream.edn
    #
    
  4. Delete the previous configuration file:

    # rm -f /opt/slipstream/server/.credentials/object-store-conf.edn
    #
    

The configuration can always be updated via web UI by going to https://<ss-host>/webui/cimi/configuration/slipstream resource and editing the configuration document there.

Known issues

Due to this bug, the credential chosen for persisting the user reports should be shared with all the users of the SlipStream instance. This should be avoided though. Thus, either do not upgrade to v3.49 or apply the patch as describe below.

How to patch SS instance: Check this patch release https://github.com/slipstream/SlipStreamServer/releases/tag/v3.49.1. It provides a patched jar with the issue #1480 fixed. Please see the details on how to patch your instance there.

Next release v3.50 will contain the fix.

v3.48 - 23 March 2018

This is primarily a bug fix release that makes improvements for SlipStream administrators.

For Everyone:
  • A usage page is gradually replacing the automatic usage report email. The page is internationalized.
For Clara:
  • The CIMI externalObject resource has been extended to include an optional filename attribute, making downloads of the referenced objects easier.
For Dave:
  • Add compatibility with Python 2.6 to the SlipStream bootstapping code so that images like Centos6 can be deployed.
  • Fixed bug where the OpenStack connector always tried to get a floating IP even when the feature was disabled.
  • When logged in as an administrator, the pages now load much more quickly.

Alice, Bob, Clara, and Dave can be found here.

Migration

Since reports are stored on S3, credentials should temporarily be set manually in /opt/slipstream/server/.credentials/object-store-conf.edn file, following the below format:

{:key                 "<KEY>"
 :secret              "<SECRET>"
 :objectStoreEndpoint "<ENDPOINT>"
 :reportsBucketName   "<REPORTS_BUCKET_NAME>"}

Note that the location and format of the file have changed since the previous release.

Known issues

  • When opening the usage page, the default time period will not be set until the filter is opened and the calendar objects are initialized.

v3.47 - 9 March 2018

This is primarily a bug fix release that makes improvements for SlipStream administrators.

For Everyone:
  • The size of the application deployments are limited as described in the scaling guidelines.
  • Fixed a problem where new users had to edit their profiles before the account could be used.
For Clara:
  • The CIMI externalObject resource has been extended to include an optional content-type attribute, making downloads of the referenced objects easier.
  • The editing process for resources through the new browser interface has been improved.
For Dave:
  • The documentation has a new section about using a Docker container for SlipStream builds.
  • Fixed an issue with the Job executor where it would send large numbers of useless requests to the CIMI server.
  • The Nashorn library replaces the (now deprecated) PhantomJS for clojurescript unit tests.
  • User roles are added to the request for API key/secret generation when provisioning VMs.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is necessary.

Known issues

No known issues.

v3.46 - 23 February 2018

This release contains a few foundational features have been added (external objects, Docker connector, credential sharing) that will improve cloud resource management in the future. It also includes changes to the way machines within a deployment access the server and how deployment reports are stored. Both require administrator attention during upgrades. (See migration section.) The release also contains a number of bug fixes.

For Everyone:
  • User resource implementation was changed to allow credential sharing between users and groups with ACLs.
  • The login dialog was changed to avoid it being obscured on mobile devices.
  • The default ACL for Connector resources was changed to allow all authentication users to see them.
  • The bootstrap script has been corrected to avoid an issue where machine deployments on Ubuntu 16 machines would fail.
  • The prototype for the new web browser UI has been improved to provide better editing capabilities with forms and JSON, to plot server metrics, and to render href attributes as links to other resources.
  • Styles of cubic (new web browser UI) have been normalized to provide a consistent look and feel.
For Clara:
  • The login methods of the Python API have been improved to cache credentials to make managing access easier.
  • Improved the CIMI support in the Python API to allow CIMI actions to be called.
  • The Python API is now part of the SlipStream RPM packages.
  • A utility method was added to the Python API to retrieve deployment events.
  • A function was added to the Clojure(Script) API to allow the server metrics to be retrieved.
  • A prototype “cloud” connector (alpha) for Docker infrastructures is now available.
For Dave:
  • The “machine” cookies that were used by VMs within a deployment to interact with SlipStream have been replaced by an API key/secret pair. These can be revoked if necessary.
  • An “external object” CIMI resource has been created to allow links to external files and resources, such as report, data files, etc. Reports are now handled with these resources. (See migration below.)
  • The server organization has been more finely segmented to allow for wider reuse of the servers and to make containerization easier.
  • Package dependencies have be rationalized and corrected (including the cheshire.jar verson in the pricing service). More work on this will occur in the future to reduce the servers’ footprints.
  • SlipStream package dependency on slipstream-client-clojure (no longer created) has been removed.

Alice, Bob, Clara, and Dave can be found here.

Migration

API key/secret pairs are now being used to manage access to the server from deployed machines. For non-scalable deployments, this change will have no effect. However, scalable deployments will lose access to the server. They need to be terminated and restarted.

Below is the migration procedure to enable the view of the connector instances by users of your SlipStream instance. From now on this is required for the deployments to succeed.

  • login to SlipStream instance as super user

  • go to https://<slipstream>/webui/cimi/connector

  • click on magnifying glass pictogram (this will fetch all connector config instances)

  • click on a connector name link

  • click on update button

  • in the edit window add the following into the list under “acl” -> “rules”:

    { "principal": "USER", "right": "VIEW", "type": "ROLE" }
    
  • click on update button to persist the configuration

  • repeat this for each connector.

The method of storing reports has changed with this release. They are now stored in S3 rather than on the server’s disk. This requires that the administrator have access to an S3 instance and migration of the existing reports to S3.

You must provide an S3 configuration file /opt/slipstream/server/.aws/credentials with the following contents:

aws_secret_access_key=<KEY>
aws_access_key_id=<SECRET>
aws_endpoint=<S3ENDPOINT>

Note that the name of the bucket is not configurable. It is set to “slipstream-reports” and must be created before being used.

Known issues

  • The switch to using API key/secret pairs will only have an effect on running scalable deployments. These will need to be stopped and redeployed.

v3.45 - 4 February 2018

This is primarily a bug fix release, but also includes a prototype for a new web interface. Feedback on that prototype is welcome.

For Everyone:
  • An SSH configuration bug that blocked SSH logins on machines without pre-existing .ssh directories was fixed.
  • A bug with the Exoscale connector that caused deployments to fail was corrected.
  • A prototype user interface has been included in the release, which is available by default on the /webui relative URL.
For Dave:
  • The configuration for the Job Engine has been added to the quick installation script.
  • CIMI resources for NuvlaBox registrations have been added.
  • Unnecessary dependencies have been removed from services and packages have been cleaned up.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is necessary.

Known issues

  • When upgrading rename the /etc/default/ssclj file to /etc/default/cimi if you’ve made changes to the configuration file.
  • If you’ve made changes to the nginx configuration files, you will need to remove the reference to authn.block in /etc/nginx/conf.d/slipstream.params.
  • The wrong version of cheshire.jar was included in the RPM package for the ss-pricing service. Replace /opt/slipstream/ss-pricing/lib/cheshire.jar with version 5.8.0 that can be found at clojars.org.
  • The RPM package slipstream-client-clojure was not generated for this release. The v3.44 version works fine.

v3.44 - 24 January 2018

This is primarily a bug fix release that makes improvements for SlipStream administrators.

For Everyone:
  • Fix bug in the deployment garbage collection that caused the clean up to fail.
For Dave:
  • Extend OpenNebula and NuvlaBox connectors to allow the vCPU/CPU ratio to be defined. The default value is 0.5.
  • Correct Logstash and Filebeat configurations when using the installation script to avoid having Logstash logs fill with errors.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is necessary.

Known issues

No known issues.

v3.43 - 22 January 2018

For Everyone:
  • Remove deprecated basic authentication and related parameters from the Python API and Command Line Client.
  • Fix concurrency issue with cookie handling in the Python API and Command Line Client.
For Dave:
  • Mark /etc/default/slipstream as a configuration file to avoid having the configuration overwritten on upgrades.
  • Improve template handling for the Exoscale connector so that the most recent templates are used by default. Avoids a problem with running in the DK region.
  • Rationalize and reduce the default logging of the services to allow for better discovery and debugging of problems.
  • Optimize the loading of the user resources from the database and provide metrics.
  • Minimize connections requests from connectors on initialization.
  • Refactor the deployment garbage collector to reduce object creation and database churn.

Alice, Bob, Clara, and Dave can be found here.

Migration

No migration is necessary.

Known issues

  • Missing dependency for the ssclj server blocks start of service.

v3.42 - 12 January 2018

This release brings the following changes.

The persistence of the user entities was moved from HSQLDB to Elasticsearch and from now on will be managed through CIMI server. On already deployed systems this assumes that a migration is required. Check Migration section below.

The following connectors were removed and are no longer supported

  • StratusLab
  • Azure
  • NativeSoftlayer
  • VCloud

Fixes and improvements:

  • fixed and improved VMs information collection service.

Migration

The steps below perform migration of users from HSQLDB to Elasticsearch (via CIMI server).

Download migration script:

$ wget https://raw.githubusercontent.com/slipstream/SlipStreamServer/master/rpm/src/main/migrations/020_migrate_users_to_cimi.py
$ chmod +x 020_migrate_users_to_cimi.py
$ yum install python-lxml
$ # or
$ pip install lxml

Dump users with:

$ export SLIPSTREAM_USERNAME=super
$ export SLIPSTREAM_PASSWORD=<password>
$ ss-login --endpoint https://<slipstream>
$ ./020_migrate_users_to_cimi.py --endpoint https://<slipstream> --get users-3.41/

Perform the upgrade:

$ yum upgrade -y
$ systemctl restart hsqldb ss-pricing ssclj slipstream \
     slipstream-job-distributor@vms_collect \
     slipstream-job-distributor@vms_cleanup \
     slipstream-job-distributor@jobs_cleanup \
     slipstream-job-executor \
     elasticsearch logstash filebeat kibana

In https://<slipstream>/configuration -> SlipStream Basics -> java class names remove any instances of the following connectors: nativesoftlayer, stratuslab, stratuslabiter, azure, vcloud. Save the configuration.

Push users back to SlipStream:

$ ./020_migrate_users_to_cimi.py --endpoint https://<slipstream> --put users-3.41/

Known issues

  • No known issues.