F5 Application Services Templates (FAST) are an easy and effective way to deploy applications on the BIG-IP system using AS3.
The FAST Extension provides a toolset for templating and managing AS3 Applications on BIG-IP.
For more information about FAST, including installation and usage information, see the FAST Documentation
If you come across a bug or other issue, please use GitHub Issues to submit an issue for our team. You can also see current known issues on that page.
Prerequisites
- BIG-IP, TMOS v13.1 or later.
- AS3 version 3.16 or later must be installed (see the AS3 Documentation for details on installing AS3).
-
Download the FAST extension RPM the GitHub Release Assets.
-
From the BIG-IP system, install the extension by navigating to iApps > Package Management LX. Click Import and then select the RPM you downloaded.
- If you are using a BIG-IP version prior to 14.0, before you can use the Configuration utility, you must enable the framework using the BIG-IP command line. From the CLI, type the following command:
touch /var/config/rest/iapps/enable
. You only need to run this command once (per BIG-IP system). This is not necessary with 14.0 and later.
Once the package is imported, you should see f5-appsvcs-templates in the list of installed extensions.
- If you are using a BIG-IP version prior to 14.0, before you can use the Configuration utility, you must enable the framework using the BIG-IP command line. From the CLI, type the following command:
-
Click iApps > Application Services > Applications LX.
-
Click F5 Application Services Templates to start using FAST.
Various script used during development are accessed through npm
:
- To check for lint errors run
npm run lint
- To run unit tests use
npm test
Both of these are also run as part of the CI pipeline for this project.
rpmbuild
is required to build the RPM.
All other dependencies are handled by NPM (make sure to do an npm install
before trying to build).
To build everything (recommended), run:
npm run build
To build just the GUI layer, run:
npm run buildgui
To build just the RPM package, run:
npm run buildrpm
The built RPM package and associated sha256 hash will be placed in the dist
directory.
The package can be installed on a BIG-IP using the usual mechanisms for installing iApp LX packages.
There is also an install-rpm
script provided in scripts
that installs the latest RPM found in dist
to a target BIG-IP via the REST API.
All log messages should contain the worker name (FAST Worker) for easier filtering.
The following logging levels are used (from low priority to high):
- fine - lower priority informational messages
- info - higher priority informational messages
- error - recoverable error (e.g., bad requests)
- severe - unrecoverable error
A finest
is also available, but already gets spammed with a lot of socket information, which makes it a common log level to disable.
All requests and responses are logged at a fine
log level by default.
Any response that contains an error status code (>=400) will default to an error
.
Copyright 2014-2020 F5 Networks Inc.
Before you start contributing to any project sponsored by F5 Networks, Inc. (F5) on GitHub, you will need to sign a Contributor License Agreement (CLA).
If you are signing as an individual, we recommend that you talk to your employer (if applicable) before signing the CLA since some employment agreements may have restrictions on your contributions to other projects. Otherwise by submitting a CLA you represent that you are legally entitled to grant the licenses recited therein.
If your employer has rights to intellectual property that you create, such as your contributions, you represent that you have received permission to make contributions on behalf of that employer, that your employer has waived such rights for your contributions, or that your employer has executed a separate CLA with F5.
If you are signing on behalf of a company, you represent that you are legally entitled to grant the license recited therein. You represent further that each employee of the entity that submits contributions is authorized to submit such contributions on behalf of the entity pursuant to the CLA.