Projects

Projects in Snoweaver are containers for development resources specific to application domains. They organize related components and create isolated environments for different stages of development. This isolation is especially useful when using a single Snowflake account for multiple environments, ensuring clear separation of resources.

Within a project, jobs benefit from shared access to the following common resources:

  • Project Variables: Reusable values that can be referenced across different jobs.

  • Macro Libraries: Collections of reusable code snippets for enhanced modularity.

  • Functions: Custom Python functions that can be imported into job environments.

  • Allowed Secrets: Secure storage and management of sensitive information.

  • Allowed External Integrations: Configurations for connecting to external systems or services.

By centralizing these shared resources, projects in Snoweaver streamline development processes, enhance collaboration, and maintain consistency across related jobs and components.

For procedure instances, Snoweaver provides additional flexibility through the call_proc function. This function allows you to invoke other procedures within the same project, enabling modular design and promoting code reuse.

Project resources can be efficiently managed through the Code stage, which allows for exporting and importing as YAML files. It is highly recommended to leverage this functionality for maintaining project integrity and simplifying the deployment process across various stages of your development lifecycle.