Custom Dependencies and Public Pages

New support for custom dependencies adds flexibility to your testing with the option to include specific SDKs and libraries. And public status pages allow you share your application status and uptime internally or externally.

The stability of your application effects the relationship with your customers and your reputation in the market. Everyone has downtime, but the best teams learn about it earlier, fix it faster, and report it transparently where they can.

Custom Dependencies

When Asserted launched, we were focused on delivering the most value to our customers as soon as we could. To accomplish this, on of the early trade-offs we made was only offering a fixed set of dependencies at runtime. These fixed dependencies are intended to cover most use cases, and to date have been all most of our customers need to write effective integration tests for production.

That said, select customers did need more specific capabilities in order to fully measure their uptime. These included things like specific SDKs, speciality libraries, or other custom dependencies.

So today we're introducing support for custom dependencies within all paid projects.

How to use Custom Dependencies

Adding custom dependencies to your Asserted routine is simple. Just update the routine.json within your repo by changing the "dependencies" parameter from "v1" to "custom".

Then install any production dependencies as you normally would for a npm package.

From that point forward you can add or remove anything from the "dependencies" field of the package.json and those exact packages will be included on every run.  

Push with custom dependencies

Behind the scenes, the asrtd CLI uses a modified version of npm-shrinkwrap to ensure that the dependencies you are using locally are exactly replicated after being pushed. Additionally, this allows us to cache these dependencies, making subsequent pushes faster by using previous builds.

Public Status Pages

The second major update is the addition of public status pages. Until now you had to be a member of a project and logged in in order to see the timeline, current status, and uptime charts.

Updating a routine to public

After making the routine status page public, anyone with the URL is able to view (but not alter) the routine status. It is not automatically indexed by search engines, so should remain only visible to those who know where to find it.

This public status page retains the live nature of the private version, so it will continue to update in real-time.

If the public status page is embedded as an iframe, it automatically detects that and removes surrounding menus.

Embedded Status Page Example

Upcoming Features

We're excited to see how our customers use these new features, and we have more in the pipeline.

Some things we're hoping to launch over the coming months:

  • Significantly expanded integration support (PagerDuty, interactive Slack App, Datadog, NewRelic, etc)
  • Granular public status page configuration (show/hide select details)
  • Pre-built SLA tracking for major SAAS providers