1. Home
  2. Getting Started
  3. Applications (repository)

Applications (repository)

Concept

Applications are also referred to as repository/repo throughout this documentation.

In Falcon Deploy, an Application is a container for all SQL files used in a project. SQL files in these containers get deployed to databases mapped to the container. Admins create the application repositories and its database mapping. Users use the repositories to store SQL files for deployment.

Application repository can optionally be a Git repository. Falcon Deploy has built-in support for the Git version control system. Git is a distributed version control system. Read more about Git here . Git is not a requirement for deployments using F-D. While Git provides several benefits, it requires a steep learning curve and may or may not be something you want for your project. If you choose to create the repository as a Git repository, users get version control, one click/command cloning of repository to the user machine, git pull/ push and several other features.

Interaction with the Git repository requires authentication. Use your User ID and password to authenticate.

Note

Deployment functionality is the same whether you use Git or non-Git repository. Authentication and authorization security measures are in place for all repository types.

If you choose to use a regular repository, you can add/remove/edit files on the F-D application pages.

Privileges

Falcon Deploy automatically creates 2 privileges for every repository. It uses the following naming convention.

  • APPLICATION (READ ONLY) – This privilege enables a user to view files and its contents in a repository. Git users need this privilege to pull contents using git pull.
  • APPLICATION (READ & WRITE) – This privilege enables a user to perform CRUD(Create, Read, Update and Delete files and its contents) in a repository. Git users need this privilege to do a git pull/push of files from their local repository and the repository in F-D.

These privileges can be granted to a Role(you may grant the Role to Team or User) or can be granted directly to a User.

A user cannot see a repository, its file contents, and its deployment logs if they do not have either one repository privilege. We recommend granting repository privileges on a need to basis – only to users working on that project.

Example: Consider an organization with HR and Finance projects. Each project has a dedicated application repository. HR project has a repo called HR and Finance project has a repo called FINANCE. Users in the HR project are granted the HR (READ & WRITE) privilege. They need not receive any privilege on the FINANCE repo. A user in the HR project can then only see file contents and deployment logs from the HR repo.

Note

Admins automatically get APPLICATION (READ & WRITE) privilege on all repositories.

Managing Applications

List Application (repository)

Clicking on APPLICATIONS opens the list of application repositories in the main content area. A user can only see the applications to which he/she has received READ ONLY or READ & WRITE privilege on the repository. The privilege can be granted directly to the user or their team. It can also be granted using a role.

Users and administrators have different list views. In user view, alongside the repository name, you also see the type of privilege received and if it was granted directly or using a role. It would also show if it was inherited via grants given to the team.

Screen example: Application list – User view

Administrators view shows the FALCON_APP repository in the list. This repository is created during installation and set to ‘Inactive’ status. This repository is used exclusively to store and deploy SQL scripts to the Falcon Deploy application database. You should not use this repository for any of your application scripts. As a database change deployment and management application, we intend to provide a seamless process when upgrading the FD application. All changes to the Falcon Deploy repository database during an upgrade may be deployed using the application itself whenever possible. This way, you will not be required to run SQL scripts using the traditional approach. Release notes are made available with new releases, and it will have the steps you need to follow.

Screen example: Application list – Administrator view

Create Application (repository)

This functionality is available to administrators. You can create a repository from the application list page.

  • Use the form field to enter the repository name. Repository name must be more than 2 and less than 30 characters long. It can only consist of alphabets, numbers, and underscores.
  • Use the radio button to choose the type of repository – Git or without Git.
  • Click on the ‘Create Repository’ button to create the repository.

If you created a repository with Git enabled, you get the benefits of Git version control. When you open the repository, click on ‘Clone URL’ button to get the link to clone your repository.

Enable/ Disable Application (repository)

This button is on the top right corner of the main content area. You can only delete files from a repository but you can’t delete the repository, it can only be disabled.

If you decide to use, please familiarize yourself with Git workflow.

Updated on March 13, 2019

Related Articles