-
Notifications
You must be signed in to change notification settings - Fork 13
Sn instances/dev102782 #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
chelseyfang
wants to merge
16
commits into
main
Choose a base branch
from
sn_instances/dev102782
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Changes from all commits
Commits
Show all changes
16 commits
Select commit
Hold shift + click to select a range
bb5f1b9
Creating Master Branch
ce005cd
Initial state of application at link to source control
caa191f
Added system properties
a030473
Updated attribute change webhook
008ab82
File name changes
jimfarley-ironclad d30b61e
Fixed property reference
df8a7ee
Completed webhook first pass (with issues)
285ccd2
Fixed workflow completed process
934d3e3
Tweaks to completion
2f6f87e
Misc updates
bd44fe1
Approval/cancel flow integrations
jimfarley-ironclad dbfcb9d
Priv changes (by system)
jimfarley-ironclad b98704e
commit
jimfarley d1a8a1c
Signer attributes
jimfarley-ironclad 6d308cf
Updates to README
jimfarley c75b75e
Link to Github docs
jimfarley File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,2 +1,58 @@ | ||
| # ea-servicenow-guide | ||
| ServiceNow assets for EA solution guide | ||
| # Ironclad EA ServiceNow Example Code | ||
| This repository contains all of the ServiceNow application assets for the EA ServiceNow solution guide. | ||
|
|
||
| # Installing the ServiceNow application | ||
| ## Create Github credential | ||
| You will need to create a credential in ServiceNow to hold an SSH key for an Github account that can access this repo. If you are only importing the application into ServiceNow (e.g., for a demo), then you only need read access to the repo. If you are making application changes that you want to save back to the repo, you will need read/write access. | ||
| ### Create SSH Key | ||
| If you do not already have a suitable SSH key registered in your Github account, you will need to create one. Note that ServiceNow has limitations in terms of what encryption algorithms it will support for SSH credentials (e.g., it does NOT support ED25519 encryption, but it DOES support ECDSA). | ||
|
|
||
| Use whatever SSH key generation tool you have - if you are using ssh-keygen on a Mac or other Unix platform, you would do the following to create a new ECDSA key pair: | ||
|
|
||
| ``` | ||
| > cd ~/.ssh | ||
| > ssh-keygen -t ecdsa -C "<your Github account email address>" | ||
| ``` | ||
|
|
||
| Be sure to keep track of the passphrase you use for the SSH key when you create it. It will be needed in the ServiceNow credential setup. | ||
|
|
||
| ### Register SSH key with your Github account | ||
| The general instructions for adding a new SSH key for your Github account can be [found here](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account). The following is a summary of the necessary steps: | ||
|
|
||
| - In your GitHub account, navigate to "Settings" (using the menu on your profile picture), and go to "SSH and GPG keys" | ||
| - Under "SSH Keys", click the "New" button | ||
| - Set the title to whatever makes sense to you (e.g., "ServiceNow dev key") | ||
| - Set the "Key type" to "Authentication key" | ||
| - Paste the public key content of your SSH key into the Key field. | ||
| - Add the SSH key to your account. | ||
|
|
||
| ## Install the "Legal Intake" Application in ServiceNow | ||
| Installing the Legal Intake app into ServiceNow involves creating a SNOW dev instance (if you don't already have one), creating a new SSH credential to connect to the GitHub repository, and importing the | ||
| ### Create a ServiceNow developer instance | ||
| - Create an account/login to developer.servicenow.com | ||
| - Create a new developer instance if you don’t have one already | ||
| ### Create ServiceNow SSH Credential | ||
| - Go to "Credentials" in the ServiceNow instance and create a new "SSH Private Key" entry in that table. | ||
| - Set the name to whatever makes sense to you (e.g., "ServiceNow Guide Github repo") | ||
| - Enter your Github user name (NOT your email address) and password, and the passcode for your SSH key. | ||
| - Copy the private key contents for your SSH key and paste them into the private key field of the credential. | ||
| - Make sure the "Active" checkbox is checked and save the credential entry. | ||
| ## Import ServiceNow Application | ||
| - In the developer instance, go to System Applications -> Studio (e.g., search for “Studio” in the main search) | ||
| - In the dialog that appears, choose "Import from Source Control" | ||
| - In the dialog that appears, choose the "ssh" option, enter the Github URL for the repository with the ServiceNow code (this repository), choose the SSH credential you create above, and specify the branch containing the code version you want. Normally you will want to import from "main", but there might be situations where you will want to import a specific version of the application, and if so, use the branch field to specify that. | ||
|
|
||
| ## Configure Application Properties | ||
| There are a set of application properties that need to be configured to allow the application to target the workflows in your Ironclad instance. | ||
|
|
||
| In your ServiceNow instance, open the Legal Intake application in Studio and navigate to the "Properties -> System Properties" section in the navigation. Then set each property as follows: | ||
|
|
||
| - ```ironclad_api_key```: This needs to contain the contents of an API key generated from your Ironclad instance. | ||
| - ```ironclad_environment```: Set this to the appropriate domain for your Ironclad environment ("ironcladapp.com" for production, "demo.ironcladapp.com" for demo, etc.) | ||
| - ```ironclad_msa_template```: Set this to the template ID for the MSA workflow you will use in the integration. | ||
| - ```ironclad_msa_signer_email_attribute```: Set this to the attribute ID for the countrparty signer email atttibure in your MSA workflow. Signer attribute IDs are unique for each workflow. | ||
| - ```ironclad_msa_signer_name_attribute```: Set this to the attribute ID for the countrparty signer name atttibure in your MSA workflow. Signer attribute IDs are unique for each workflow. | ||
| - ```ironclad_workflow_creator```: Set this to the email address of the Ironclad user you would like to use as the creator of all workflows launched from ServiceNow. | ||
| - ```ironclad_nda_template```: Set this to the template ID for the NDA workflow in your Ironclad environment. | ||
| ## Configure Ironclad Webhooks | ||
| Once the application is loaded, you need to retrieve the endpoints of the Scripted REST resources defined in the app and register them to receive webhooks from your Ironclad instance. In Studio, navigate to the Inbound Integrations -> Scripted REST Resources, and for each item in this list, select it and capture the "Resource path" in the details for the REST endpoint. The full endpoint URL will be the domain of your developer instance (see your browser address bar, typically this will be of the form "devXXXX.service-now.com"). | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,27 @@ | ||
| # Generated files | ||
| This repository contains generated files and a checksum. | ||
|
|
||
| If you find yourself unable to import your repository due to the presence of files edited outside an instance of ServiceNow, merge commits that mix files from different revisions, or other data that does not match the checksum, you may recover using either of the following techniques: | ||
| * Remove the problem commits: | ||
| 1. Clone your repository to a personal computer with the git command line tools installed and open a git command prompt in the repository root | ||
| 2. Run `git log` and take note of the SHA1s of the problem commits | ||
| 3. Build revert commits using `git revert SHA1` repeatedly, working backward in time, for each commit that introduced changes not generated by a ServiceNow instance | ||
| 4. Run `git push` | ||
|
|
||
| * Overwrite the problem code snapshot with a known good one: | ||
| 1. Clone your repository to a personal computer with the git command line tools installed and open a git command prompt in the repository root, | ||
| 2. Locate a known good code snapshot and record its SHA1. For this step, `git log` can be useful. | ||
| 2. Run `git reset --hard SHA1` to a commit that was generated by a ServiceNow instance | ||
| 3. Run `git reset HEAD{1}` | ||
| 4. Run `git add -A` | ||
| 5. Run `git commit` | ||
| 6. Run `git push` | ||
|
|
||
| **Notes on dependencies** | ||
| 1. Dependencies will not show up in the list of changes but will be exported/imported | ||
| 2. It is your responsibility to resolve the dependencies before installing an application. ServiceNow source control will not manage these for you. In case you installed an application before installing its dependencies: | ||
| 2.1 Delete the application | ||
| 2.2 Activate/install all required dependencies | ||
| 2.3 Re-import the application from source control | ||
| Currently listed dependencies: | ||
| * Task table schema |
16 changes: 16 additions & 0 deletions
16
..._elective_update/sys_choice_x_749125_legal_i_0_legal_agreement_request_agreement_type.xml
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,16 @@ | ||
| <?xml version="1.0" encoding="UTF-8"?><record_update> | ||
| <sys_choice action="INSERT_OR_UPDATE" field="agreement_type" table="x_749125_legal_i_0_legal_agreement_request" version="3"> | ||
| <sys_choice_set action="INSERT_OR_UPDATE"> | ||
| <element>agreement_type</element> | ||
| <name>x_749125_legal_i_0_legal_agreement_request</name> | ||
| <sys_class_name>sys_choice_set</sys_class_name> | ||
| <sys_created_by>admin</sys_created_by> | ||
| <sys_created_on>2022-08-18 22:18:03</sys_created_on> | ||
| <sys_name>agreement_type</sys_name> | ||
| <sys_package display_value="Legal Intake Management" source="x_749125_legal_i_0">a388c41397151110940a7b771153af49</sys_package> | ||
| <sys_policy/> | ||
| <sys_scope display_value="Legal Intake Management">a388c41397151110940a7b771153af49</sys_scope> | ||
| <sys_update_name>sys_choice_x_749125_legal_i_0_legal_agreement_request_agreement_type</sys_update_name> | ||
| </sys_choice_set> | ||
| </sys_choice> | ||
| </record_update> |
48 changes: 48 additions & 0 deletions
48
...hor_elective_update/sys_choice_x_749125_legal_i_0_legal_agreement_task_agreement_type.xml
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,48 @@ | ||
| <?xml version="1.0" encoding="UTF-8"?><record_update> | ||
| <sys_choice action="INSERT_OR_UPDATE" field="agreement_type" table="x_749125_legal_i_0_legal_agreement_task" version="3"> | ||
| <sys_choice_set action="INSERT_OR_UPDATE"> | ||
| <element>agreement_type</element> | ||
| <name>x_749125_legal_i_0_legal_agreement_task</name> | ||
| <sys_class_name>sys_choice_set</sys_class_name> | ||
| <sys_created_by>admin</sys_created_by> | ||
| <sys_created_on>2022-10-16 22:21:10</sys_created_on> | ||
| <sys_name>agreement_type</sys_name> | ||
| <sys_package display_value="Legal Intake Management" source="x_749125_legal_i_0">a388c41397151110940a7b771153af49</sys_package> | ||
| <sys_policy/> | ||
| <sys_scope display_value="Legal Intake Management">a388c41397151110940a7b771153af49</sys_scope> | ||
| <sys_update_name>sys_choice_x_749125_legal_i_0_legal_agreement_task_agreement_type</sys_update_name> | ||
| </sys_choice_set> | ||
| <sys_choice action="INSERT_OR_UPDATE"> | ||
| <dependent_value/> | ||
| <element>agreement_type</element> | ||
| <hint/> | ||
| <inactive>false</inactive> | ||
| <label>Master Service Agreement</label> | ||
| <language>en</language> | ||
| <name>x_749125_legal_i_0_legal_agreement_task</name> | ||
| <sequence/> | ||
| <synonyms/> | ||
| <sys_created_by>admin</sys_created_by> | ||
| <sys_created_on>2022-10-16 22:21:10</sys_created_on> | ||
| <sys_domain>global</sys_domain> | ||
| <sys_domain_path>/</sys_domain_path> | ||
| <value>MSA</value> | ||
| </sys_choice> | ||
| <sys_choice action="INSERT_OR_UPDATE"> | ||
| <dependent_value/> | ||
| <element>agreement_type</element> | ||
| <hint/> | ||
| <inactive>false</inactive> | ||
| <label>Non-Disclosure Agreement</label> | ||
| <language>en</language> | ||
| <name>x_749125_legal_i_0_legal_agreement_task</name> | ||
| <sequence/> | ||
| <synonyms/> | ||
| <sys_created_by>admin</sys_created_by> | ||
| <sys_created_on>2022-10-16 22:21:48</sys_created_on> | ||
| <sys_domain>global</sys_domain> | ||
| <sys_domain_path>/</sys_domain_path> | ||
| <value>NDA</value> | ||
| </sys_choice> | ||
| </sys_choice> | ||
| </record_update> |
79 changes: 79 additions & 0 deletions
79
...40a7b771153af49/author_elective_update/sys_db_object_84bcbae52f121110443b5fd92799b6f8.xml
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,79 @@ | ||
| <?xml version="1.0" encoding="UTF-8"?><record_update table="sys_db_object"> | ||
| <sys_db_object action="DELETE"> | ||
| <access/> | ||
| <actions_access>true</actions_access> | ||
| <alter_access>true</alter_access> | ||
| <caller_access/> | ||
| <client_scripts_access>true</client_scripts_access> | ||
| <configuration_access>false</configuration_access> | ||
| <create_access>true</create_access> | ||
| <create_access_controls>false</create_access_controls> | ||
| <delete_access>false</delete_access> | ||
| <is_extendable>false</is_extendable> | ||
| <label>Legal Agreement Request</label> | ||
| <live_feed_enabled>false</live_feed_enabled> | ||
| <name>x_749125_legal_i_0_legal_agreement_request</name> | ||
| <number_ref/> | ||
| <provider_class/> | ||
| <read_access>true</read_access> | ||
| <scriptable_table>false</scriptable_table> | ||
| <super_class/> | ||
| <sys_class_name>sys_db_object</sys_class_name> | ||
| <sys_created_by>admin</sys_created_by> | ||
| <sys_created_on>2022-10-02 17:50:47</sys_created_on> | ||
| <sys_id>84bcbae52f121110443b5fd92799b6f8</sys_id> | ||
| <sys_mod_count>0</sys_mod_count> | ||
| <sys_name>Legal I 0 Legal Agreement Request</sys_name> | ||
| <sys_package display_value="Legal Intake Management" source="x_749125_legal_i_0">a388c41397151110940a7b771153af49</sys_package> | ||
| <sys_policy/> | ||
| <sys_scope display_value="Legal Intake Management">a388c41397151110940a7b771153af49</sys_scope> | ||
| <sys_update_name>sys_db_object_84bcbae52f121110443b5fd92799b6f8</sys_update_name> | ||
| <sys_updated_by>admin</sys_updated_by> | ||
| <sys_updated_on>2022-10-02 17:50:47</sys_updated_on> | ||
| <update_access>true</update_access> | ||
| <user_role/> | ||
| <ws_access>true</ws_access> | ||
| </sys_db_object> | ||
| <sys_update_version action="INSERT_OR_UPDATE"> | ||
| <action>DELETE</action> | ||
| <application display_value="Legal Intake Management">a388c41397151110940a7b771153af49</application> | ||
| <file_path/> | ||
| <instance_id>65a8398ddb62dbc04f035d00cf9619c1</instance_id> | ||
| <instance_name>dev60711</instance_name> | ||
| <name>sys_db_object_84bcbae52f121110443b5fd92799b6f8</name> | ||
| <payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_db_object"><sys_db_object action="INSERT_OR_UPDATE"><access/><actions_access>true</actions_access><alter_access>true</alter_access><caller_access/><client_scripts_access>true</client_scripts_access><configuration_access>false</configuration_access><create_access>true</create_access><create_access_controls>false</create_access_controls><delete_access>false</delete_access><is_extendable>false</is_extendable><label>Legal Agreement Request</label><live_feed_enabled>false</live_feed_enabled><name>x_749125_legal_i_0_legal_agreement_request</name><number_ref/><provider_class/><read_access>true</read_access><scriptable_table>false</scriptable_table><super_class/><sys_class_name>sys_db_object</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2022-10-02 17:50:47</sys_created_on><sys_id>84bcbae52f121110443b5fd92799b6f8</sys_id><sys_mod_count>0</sys_mod_count><sys_name>Legal I 0 Legal Agreement Request</sys_name><sys_package display_value="Legal Intake Management" source="x_749125_legal_i_0">a388c41397151110940a7b771153af49</sys_package><sys_policy/><sys_scope display_value="Legal Intake Management">a388c41397151110940a7b771153af49</sys_scope><sys_update_name>sys_db_object_84bcbae52f121110443b5fd92799b6f8</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2022-10-02 17:50:47</sys_updated_on><update_access>true</update_access><user_role/><ws_access>true</ws_access></sys_db_object></record_update>]]></payload> | ||
| <payload_hash>-1981645015</payload_hash> | ||
| <record_name>Legal Agreement Request</record_name> | ||
| <reverted_from/> | ||
| <source>d8a316332f021110443b5fd92799b613</source> | ||
| <source_table>sys_upgrade_history</source_table> | ||
| <state>previous</state> | ||
| <sys_created_by/> | ||
| <sys_created_on>2022-09-27 04:22:01</sys_created_on> | ||
| <sys_id>a4bcfae52f121110443b5fd92799b65b</sys_id> | ||
| <sys_mod_count/> | ||
| <sys_recorded_at>1837d2e2a280000000</sys_recorded_at> | ||
| <sys_updated_by/> | ||
| <sys_updated_on/> | ||
| <type>Table</type> | ||
| <update_guid>64bcfae5b1121110917681756900ed5b</update_guid> | ||
| <update_guid_history>64bcfae5b1121110917681756900ed5b:-1981645015</update_guid_history> | ||
| </sys_update_version> | ||
| <sys_metadata_delete action="INSERT_OR_UPDATE"> | ||
| <sys_audit_delete/> | ||
| <sys_class_name>sys_metadata_delete</sys_class_name> | ||
| <sys_created_by>admin</sys_created_by> | ||
| <sys_created_on>2022-11-08 17:08:18</sys_created_on> | ||
| <sys_db_object display_value="" name="sys_db_object">sys_db_object</sys_db_object> | ||
| <sys_id>be4af075537f4d408d845e1a1744de40</sys_id> | ||
| <sys_metadata>84bcbae52f121110443b5fd92799b6f8</sys_metadata> | ||
| <sys_name>Legal Agreement Request</sys_name> | ||
| <sys_package display_value="Legal Intake Management" source="x_749125_legal_i_0">a388c41397151110940a7b771153af49</sys_package> | ||
| <sys_parent/> | ||
| <sys_policy/> | ||
| <sys_scope display_value="Legal Intake Management">a388c41397151110940a7b771153af49</sys_scope> | ||
| <sys_scope_delete display_value="">76957533a4164a94af24a6a3a42a2510</sys_scope_delete> | ||
| <sys_update_name>sys_db_object_84bcbae52f121110443b5fd92799b6f8</sys_update_name> | ||
| <sys_update_version display_value="sys_db_object_84bcbae52f121110443b5fd92799b6f8">a4bcfae52f121110443b5fd92799b65b</sys_update_version> | ||
| </sys_metadata_delete> | ||
| </record_update> |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.