When you initially set up a Git connection, DAI performs an initial in memory clone of your Git repository (repo) to see which suites are available for you to add to DAI.
After establishing a connection to your Git repository, DAI provides an up-to-date selection of available suites and snippets by storing their relative file paths. Should a suite's location change, you will need to unlink and reimport it to update the path, but be warned that this will delete the associated resources that depend on it.
DAI automatically synchronizes with your Git repository every 5 minutes to maintain a refreshed list of suites and snippets.
To enhance synchronization speed and security, DAI performs a targeted shallow git clone, fetching only the repo's file tree. It identifies suite folders with the
.suite suffix, retaining in memory their paths and the relative paths of the scripts within. Only the
SuiteInfo files are loaded from the repo to extract their helper suite information. Apart from these, the DAI server neither loads nor stores any file content. The paths of the suites and scripts are saved as they're linked or used respectively.
Please note that Eggplant Functional (EPF) will execute a full repo clone to access the code. For heightened security or expedited startup of Git-based tests, consider using a dedicated repository for Eggplant suites.
You can access the latest list of suites in the Manage suites screen and the list of snippets in scripted test case creation. DAI displays these regardless of their presence on the current branch; it won't alert you if a suite or snippet is absent in the current branch until runtime when it will report errors.
To instantly synchronize after a recent push to your repo, request a synchronization from the Edit Git connection page. After requesting, refresh the page to view the updated status.
If your access to the Git repo is revoked (e.g. your account or credential is removed or disabled, or the repo is deleted) then DAI will not remove the Git connection, the cloned file-tree, or any suites that have been added. You will still be able to add new suites and select snippets to add to test cases while they are still present in DAI server's memory from the last synchronization. However, any attempt to execute a test configuration will certainly fail. The list of suites and snippets will be cleared on server restart and DAI will display warnings when you go to Manage or Edit your Git Connections, notifying you that your Git Connection is failing. Assuming your access revocation is permanent (it could just be as simple as your password expiring), you may choose to Delete the Git Connection, but be warned that this will delete your associated test cases, test results, and stored file paths to scripts.