Workspaces
Workspaces are isolated, containerized development interfaces within an Ascend instance. They provide an Integrated Development Environment (IDE) where developers and data engineers can interact directly with their Project resources, allowing them to build and run their Ascend Flows.
Key Features
-
Integrated Development Environment: Workspaces include an IDE-like interface to provide a seamless development experience right in your browser. Users can easily work on multiple files at once, compare components, build and run flows, and view the results.
-
Resource Access: Since Workspaces are tied to a specific Environment, administrators can restrict the access a developer has based on how they provision access to the Environment. For example, if the developer's Workspace is in the dev Environment, which only has access to the Development Vault, then the developer can only use secrets from that key vault.
-
Git Integration and CI/CD: Workspaces allow developers to work directly from any branch of their Git repository. This integration facilitates version control, enabling users to track changes, collaborate, and maintain code quality. When changes are ready, you can merge them into the main branch, triggering CI/CD pipelines that automate testing, validation, and deployment processes. This seamless integration helps ensure that updates are consistently managed and efficiently moved through the development lifecycle.
Workspace Configuration
- Environment: Workspaces can only run in a single Ascend Environment and are tied to the security boundaries of that Environment. Once a Workspace is created, it cannot be moved to a different Environment.
- Project: Within a Workspace, you can select a Project to work on. You can explore the project resources and build and run flows.
- Branch and Base Branch: Workspaces are tied to a git branch within your Git Repository. This will typically be a development branch for the developer, like
jane/dev-feature-a
, wherejane
is the developer anddev-feature-a
is where she is developingFeature A
. Any changes made to your Project files in the Workspace will be committed to this branch.
While a Workspace is tied to a single Environment, you can change the Project and the Git Branch for your Workspace. This allows developers to work on multiple Projects and easily switch between them, while ensuring that there are no conflicts with other developers working in Ascend.
- Profile: A Workspace uses a Profile to define the configurations for running flows. The profiles are defined in the
profiles
folder of your project.
Working in a Workspace
Workspaces are the heart of your development on Ascend, packed with features to streamline building and managing data flows:
- Toolbar: Tools available to you like your File Tree and Connections.
- File Tree: Your Project folders and files will be displayed here. You can use the File Tree to create, move, and delete files and folders. You can also click on files in the File Tree to open them in the Editor.
- Editor: Edit files with ease, using the side-by-side editor to compare components. The Editor allows you to configure and modify how you want your files and tabs to be displayed so you can easily work on multiple files at once.
- Build Explorer: The Build Explorer allows you to view the built versions of your flows, run your flows, and view the results of completed flows. For more information on the Build Explorer, see the Build Explorer page.
- Status Bar: You can view the status of the most current build, the current branch, the status of your branch compared to the base branch, and other helpful information.
Getting Started
To start using Workspaces, check out instructions on setting up your Workspace in our Getting Started Guide.
Happy building!