Skip to content

Cloud Deployment Automation, Security / Admin App Bug Fixes

Compare
Choose a tag to compare
@valhuber valhuber released this 23 Aug 04:38
· 1726 commits to main since this release

Working software - deployed - to engage collaboration / iteration

The key theme of this release how API Logic Server supports the Agile vision of working software - instantly and deployed - to engage collaboration and iteration:

  1. Working Software Now: APIs and Admin apps created instantly
  2. Collaboration via Automated Cloud Deployment -- new in this release
    • This makes dev previews available in the cloud for UI Developers (via the APIs) and Business Users (via the Admin App)
  3. Iteration: using rules and Python as required

Click here for more information.

 

 

Automated Cloud Deployment

The devops directory provides scripts for automated cloud deployment, including:

  • Containerizing your application
  • Adding Security
  • Multi-Container Docker Compose
  • Azure Deployment Script Automation

The documentation contains Worked Examples, for creating and deploying multi-container applications, with test databases you can use for MySQL and Postgres.

 

Flexible AuthDB

You can now configure AuthDB with different database types, and add your own custom user properties.

 

Docker Databases now include AuthDB

The Docker Test Databases now include AuthDB for MySQL and Postgres. These are used in the worked examples noted above.

 

Custom 'AuthDB`

The CLI now enables you to designate your own authdb:

  • this enables you to use your own User properties in Grant declarations.

  • authdb scripts are created to get you started

For example:

ApiLogicServer add-auth --project_name=. --db_url=mysql+pymysql://root:p@localhost:3306/authdb

 

meta data api (preview)

Created APIs now include an endpoint in api/customize_api.py to return meta data:

curl -X GET "http://localhost:5656/metadata?include=attributes"

 

CORS enhancements

CORS support has been extended in api_logic_server_run.py with:

flask_app = Flask("API Logic Server", template_folder='ui/templates')  # templates to load ui/admin/admin.yaml

CORS(flask_app, resources=[{r"/api/*": {"origins": "*"}}],
     allow_headers=["Content-Type", "Authorization", "Access-Control-Allow-Credentials"],supports_credentials=True)

 

Bug Fixes

 

Admin App: Favorites, UserKey, Lookups

The Predictive Joins, Lookups not working issue has been resolved. So, for example, the classicmodels app looks like this:

classicmodels

 

Internals

The internal source code has been reworked significantly, including documentation enhancements and refactoring (e.g., introduction of metadata.py.