Skip to main content

Project storage

When creating a JAICP project, you can choose the way it will be stored:

External storage

JAICP projects can be stored in Git repositories.

caution
Other version control systems like Mercurial or SVN are not supported.

Using Git for project storage has a number of advantages:

  • The ability to roll back the project to any previous version.
  • Easy collaboration and simultaneous development thanks to branching.
  • Flexible control over content development teams.

GitHub and Bitbucket

JAICP has a built-in integration with the GitHub and Bitbucket hosting providers. When creating a project, you can either create a new GitHub or Bitbucket repository for it or connect an existing one.

  1. Select the way to create a project:
    • Create from scratch.
    • Use template.
    • Upload existing project.
  2. Under Project location, select GitHub or Bitbucket.
  3. If you are doing this for the first time, an authorization window will open. Allow JAICP to access your account.
  4. On the project creation page, specify the repository settings:
    • Workspace (Bitbucket only).

    • Project (Bitbucket only).

    • Repository name.

    • Access, which can be public or private.

      tip
      Public repositories can be viewed by anyone, and modified only by authorized GitHub and Bitbucket users. For private repositories, you can manage access and modification settings by yourself.

After you click Create project, a GitHub or Bitbucket repository with the specified settings and the new project code will be created.

Another service

To store your project, you can use hosting providers other than GitHub and Bitbucket as well, such as GitLab. Select Another service as the project location when creating a project.

Fill in the fields:

  • Repository URL.
  • Path — the relative path to the directory containing the project code, . by default (which is the root directory). This directory should contain the chatbot.yaml configuration file.
  • Branch — the branch with the project code, master by default. The content of this branch will be displayed in the code editor and in J‑Graph.

To access the repository, you can use either a personal account or guest access (it can only be enabled in on-premise JAICP installations).

  • Login — the username on the hosting service where the repository is located.

    caution
    Do not use your email instead of the username.
  • Personal access token for Git repositories.

After you click Create project, the repository will be connected to your new project.

caution
If you are creating a project from scratch, from a template, or from an archive, the contents of the specified repository branch will be overwritten with the new project code.

Local storage

Projects kept in the local storage are stored directly in JAICP.

Local projects are created quickly and do not require any extra repository administration, but they impose a number of restrictions:

  • No proper version control and no way to roll back to previous versions.
  • Difficulties for several developers to work on the project at the same time.
  • Projects become harder to maintain as their codebase grows.

To store a project locally, click Create and store project in JAICP on creating the project.

Changing the project location

caution
Once a project is created, you cannot directly change its location from the local storage to an external repository or vice versa.
  1. Export the project as an archive and unzip it.
  2. Go to the project subdirectory and initialize a new Git repository.
  3. Commit the changes and push them to an external repository.
  4. Create a new project stored in an external repository.