4th April 2023
What's New at Northflank: Q1 2023
Over the past quarter, the Northflank team has delivered an exciting array of new features and enhancements to streamline the process of importing, building, and deploying production infrastructure on the Northflank platform.
To better support migration to Northflank from other platforms, we have significantly improved the import process with changes including: increased import speeds, new live import by connection string, and automated data import into users’ Northflank generated databases.
We also recognize the importance of integrating Northflank's build platform seamlessly into your existing workflows. To this end, we have introduced multi-stage build targets, expedited cloning speeds, added options to ignore commit messages, and enabled full Git history support for a wider range of workloads and use cases.
Additionally, we have improved the overall DX with a wide range of changes. Highlights include: making managed environment variables accessible during build and runtime, extending resource name limits from 20 to 39 characters, providing visible resource IDs for easier dashboard and API usage, and refining Docker command/entrypoint and Buildpack workflows. For a complete list of improvements, please read the full release notes below.
Thank you to everyone who has provided feedback and input over the last quarter. Over the coming months, Northflank will be rolling out a number of powerful new features. To keep up to date with all that's new at Northflank, please follow us on Twitter. If you have any questions, comments, or suggestions, please reach out through our contact page or other direct channels. We’d love to hear from you!
Release Notes
Services
Improved Docker command/entrypoint and Buildpack workflows with the following updates:
- Simplified custom override creation with an updated UI.
- Docker users can now choose between: default config, custom entrypoint, custom command, or both.
- Buildpack users can now choose between: default config, custom process (from your Procfile), custom command (either using the default process or the Buildpack launcher as entrypoint) or custom entrypoint & command.
- To learn more check out: Documentation for Command and Entrypoint Override.
Added ability to import Heroku apps and pipelines.
- You can now link your Heroku account in your user or team settings, and select which apps and pipelines you wish to import from Heroku.
- Added options to configure the resources and settings for each app, and choose how to integrate with your existing version control setup.
- Your Heroku resources are now automatically migrated to Northflank resources and saved as a new template that can be rerun or reconfigured as needed.
- To learn more check out: Documentation on How to Migrate from Heroku.
Enhanced flexibility and performance of build platform.
- Added advanced build settings to expand VCS functionality.
- Added the option to include the .git folder and full git history in builds.
- Added commit message ignore flags. When enabled, a commit won't be built as part of CI if the commit message contains an ignore flag. After enabling the setting, we include a list of preconfigured messages such as [skip ci]. These can be added or removed to fit your workflow.
- Added an Allow toggle to the path rules setting. When enabled, a commit will only be built if it modifies one or more files that match any of the path rules. This is useful for monorepos, where you may only want to build commits that affect a specific folder.
- Added an optional target build stage for users who provide multi-stage Dockerfiles.
- The status of Northflank deployment services are now displayed on GitHub, and deployment statuses will be cleaned up in cases where the build source for a service is changed.
- Increased the speed of Git repository cloning when creating a service from a template.
- The dashboard of a new service is now accessible immediately, providing you with information about the current status of cloning.
- Improved the handling for unlinking and relinking version control accounts.
- When linking to a new version control account, your existing Northflank resources will automatically switch over to the new version control account. Note: the new version control account must have access to your original repository.
- Added advanced build settings to expand VCS functionality.
Addons
- Added support for the following stateful workload versions:
- MySQL:
8.0.32
- RabbitMQ
3.9.29
,3.10.19
,3.11.10
- Redis
6.2.11
,7.0.9
- MongoDB
4.2.21
,4.4.15
,5.0.15
,6.0.5
- Postgres
11.19
,12.14
,13.10
,14.7
- Minio
2023.3.13
- MySQL:
- Restores of imported data are now imported to the default database.
- Imports from connection strings are now supported for MySQL, Postgres and MongoDB addons.
- Added ability to override default database name during creation for: MySQL, Postgres, MongoDB, and RabbitMQ (vhost).
- Added support for Zstandard (zstd) to compress backups and imports.
- Improved compression speed with multi-threaded compression.
- Added support for the following Postgres extensions: earthdistance, pgRouting, PostGIS, and pg_stat_statements.
- Added rollout strategy improvements when using a multi-replica configuration in your MySQL, Postgres, or Redis addons.
- Database replicas will now be restarted sequentially when scaled or re-deployed, ensuring minimal to zero downtime.
- Improved connection details by including tooltips for environment variable descriptions and introducing one-click filtering on external connection details.
Jobs
- You can now specify ephemeral storage of more than 1 GB to better complete tasks that require more disk usage (eg. file processing).
- Added ability to preview or override job configuration when manually triggering a job run. Override deployment configuration, environment variables, Docker command/entrypoint and Buildpack workflows and resources.
- Added shareable job trigger with pre-filled configuration URL for repeatability, external workflows and collaboration with teammates.
Usability
- Resource ID is now shown in the dashboard resource header for use with the API.
- Resources can be renamed from the header by hovering over the existing name.
- Resource descriptions can be edited from the header by hovering over the description field.
- Project colours can now be updated after creation.
- You can now initiate a CLI session with a browser login.
- Added Fig autocomplete for Northflank/Fig CLI.
- Fixed bug that caused certain browsers to block VCS linking flow with pop-up windows.
- Added page titles to improve navigation experience.
- Updated first and second level sidebar navigation with hover states and icons for better readability.
- Added ability to
forward
proxy in the CLI without requiring root user privileges using--skipHostnames
. - Improved terminal output when forwarding ports for Northflank resources.
- Added ability to delete projects with active resources.
- Improved team invite notifications and management.
- Updated the UI for account limits for better readability.
API
- Added new API endpoints for:
- Pausing & resuming jobs
- Backup schedule & retention
- Billing details and invoice(s)
- Added ability to pick the latest version, latest major version or latest patch version for addon deployments via API using
latest
or{version}-latest
, ie14-latest
.
Additional Updates and Improvements
- Added one time password support (Multi-factor Authentication).
- Teams can view whether or not teammates have MFA enabled.
- Improved invoices with ability to specify additional emails for delivery, add EU/UK VAT IDs with associated tax addresses, and override invoice name from default user/team name.
- Extended resource name limits from 20 to 39 characters.
- Added ability to configure resource list length app-wide.
- Removed password requirement for SSO accounts.
- Added new managed variables to access deployed image versions, resources, hosts and domains via injected environment variables:
- Build time: such as
NF_GIT_SHA
,NF_GIT_BRANCH
andNF_PREVIOUS_BUILD_GIT_SHA
- Runtime:
NF_PLAN_ID
,NF_CPU_RESOURCES
,NF_RAM_RESOURCES
,NF_EPHEMERAL_STORAGE
,NF_OBJECT_ID
,NF_PROJECT_ID
,NF_DEPLOYMENT_SHA
,NF_DEPLOYMENT_REPO
,NF_DEPLOYMENT_BRANCH
,NF_HOSTS
- Build time: such as
- Env/secret file templating can now use managed variables.
- Added guides for Kong and Traefik.