CI/CD Solution with Bitbucket
Submitted by @Linus and @uchohan The pipelines in this solution are for a proposed CI/CD process. The implementation and documentation will enable the following capabilities Ability to source control any SnapLogic Pipeline, Task and Account Commit entire project Commit individual asset Specify commit message Specify branch name Automatic Bitbucket project, repository and branch creation Automatic Bitbucket CI/CD file upload and Pipeline enablement Automatic SnapLogic project space, project and asset creation Ability to pull assets from Bitbucket to a SnapLogic project Revert changes based on specific branch Revert entire project or specific asset SnapLogic Compare Pipeline review Bitbucket Pull Request creation, approval and merge Automatic promotion of assets from development to production Terminology A SnapLogic project space (belongs to a SnapLogic organization) will be mapped to a Bitbucket repository A SnapLogic project (belongs to a SnapLogic project space) will be mapped to a Bitbucket repository (belongs to a Bitbucket project) Each repository will have 1 or more Bitbucket branches. By default, the master branch will reflect the state of assets in the SnapLogic production organization. Additional branches (feature branches) inherits the master branch and will reflect various new development efforts in the SnapLogic development organization Developer assets Each SnapLogic user that should be involved in committing or pulling assets to the Bitbucket space could have its unique and individual assets. It is recommended that each user duplicates the User_Bitbucket project and replaces User with its unique name. Although covered in greater detail in the attached PDF, the User_Bitbucket project holds these four Pipelines, each containing a single Snap: Commit Project - Commits any Pipelines, Accounts and Tasks within the specified SnapLogic project, to the specified branch in Bitbucket Commit Asset - Commits the specified asset within the specified SnapLogic project, to the specified branch in Bitbucket Pull Project - Reads any Pipelines, Accounts and Tasks from the specified branch in the specified Bitbucket, to the specified project and organization of SnapLogic Pull Asset - Reads the specified asset from the specified branch in the specified Bitbucket, to the specified project and organization of SnapLogic For each Pipeline, each user needs to update the bitbucket_account Pipeline Parameter in the respective Snaps, matching the path to their own Bitbucket Account. Downloads Documentation CI_CD Documentation.pdf (1.3 MB) For User_Bitbucket project: Commit Asset.slp (3.5 KB) Commit Project.slp (3.4 KB) Pull Asset.slp (3.6 KB) Pull Project.slp (3.6 KB) Note: These pipelines all rely on shared pipelines located in a CICD-BitBucket project. Make sure to update the mappings to the pipelines within the CICd-BitBucket project to your location. For CICD-BitBucket project: 1.0 Main - SL Project to Bitbucket.slp (17.5 KB) 1.1 Create Project and Repo.slp (19.2 KB) 1.2 SL Asset to Bitbucket.slp (14.8 KB) 2.0 Main - Migrate Assets To SL.slp (23.1 KB) 2.1 Upsert Space And Project.slp (16.4 KB) 2.2 Read Assets.slp (29.3 KB) 2.2.1 Upsert Pipeline To SL.slp (12.8 KB) 2.2.2 Upsert Account To SL.slp (17.9 KB) 2.2.3 Upsert Task To SL.slp (21.2 KB) PromotionRequest.slp (26.0 KB)9KViews5likes6CommentsEmployee Journey: Employee Onboarding/Offboarding
SnapLogic and SnapLogic partner, Eljun LLC, demonstrate an employee onboarding/offboarding automation use case across a multi-endpoint stack. This solution fully automates account and file management once an employee is hired or employee account deprovisioning once an employee is no longer with the company. Applications in use: Workday, Active Directory, ServiceNow, Salesforce Pipelines The following pipelines are used in this solution. Workday Event Based Integration This pipeline is meant to be triggered by hire and termination events in Workday, which will determine which child pipeline to execute. Snaps used: JSON Parser, Mapper, Workday Read, Router, Pipeline Execute, Union Child pipelines: Employee Journey-Onboarding-AD-SNOW-SF, Employee Journey-Offboarding-AD-SNOW-SF Employee Journey-Onboarding-AD-SNOW-SF This pipeline is called by the Workday Event Based Integration pipeline when a user is added. Snaps used: Workday Read, Tail, Copy, JSON Formatter, File Writer, Mapper, Active Directory List Users, Active Directory Create Entry, Active Directory Update Entry, Exit, ServiceNow Query, ServiceNow Insert, Router, ServiceNow Update, ServiceNow Create, Head Employee Journey-Offboarding-AD-SNOW-SF This pipeline is called by the Workday Event Based Integration pipeline when a user is being offboarded. Snaps used: Workday Read, Filter, Head, Copy, Mapper, Active Directory List Users, Active Directory Disable Entry, ServiceNow Query, ServiceNow Delete, Salesforce Read, Salesforce Update Downloads Workday Event Based Integration.slp (23.7 KB) Employee Journey-Onboarding-AD-SNOW-SF.slp (38.4 KB) Employee Journey-Offboarding-AD-SNOW-SF.slp (25.5 KB)4.3KViews2likes0CommentsEmployee Journey: Recruiting: Position Creation
This pattern is part of Recruitment Automation of the Employee Journey. SnapLogic and SnapLogic partner, Eljun LLC, demonstrate how the data from a new job position opened up in Workday can be automatically pushed to an applicant tracking system, such as Jobvite. Configuration Applications in use : Workday, Snowflake, Jobvite Snaps used: Mapper, Workday Read, REST Get, Router, REST Put, REST Post, Union, Snowflake - Insert Downloads PositionCreation_2021_03_18.slp (29.2 KB)3KViews2likes0CommentsEmployee Journey: People Analytics
This pattern is part of People Analytics of the Employee Journey. SnapLogic and SnapLogic partner, Eljun LLC, demonstrate a people analytics use case, automatically moving Workday operational metadata updates to an analytics database for analysis and insights. Configuration Applications in use : Workday, Snowflake Snaps used : Workday Read, Mapper, Sort, Group by Fields, Copy, Group by N, JSON Splitter, Join, Filter, Snowflake SCD2, Snowflake Execute, Router, Conditional, Union, Snowflake Bulk Upsert Downloads People_Analytics_Warehouse_EmployeeTable.slp (73.2 KB)2.8KViews1like0CommentsActive Directory get User Data Endpoint
Created by @dwhite Enter a base DN and an AD username to use LDAP search to find a specific user. Run as a trigger task endpoint or as a child pipeline. Configuration Enter the base dn to look for users in via the “baseDn” parameter. Enter the AD username in the “filterUser” parameter. Assign to trigger task and call via rest. Or assign to pipeline execute and run as a child as part of an orchestrator pipeline. Sources: Active Directory User Object Class Targets: REST call return Snaps used: LDAP Search, Filter, Mapper, Join, Union, Group by n Downloads AD Get User Data Endpoint.slp (14.9 KB)2.5KViews1like0Comments