Watch a demo
Prerequisites
- A Prophecy cluster admin to enable the Transpiler in your Kubernetes pod.
- A Team admin to enable the Transpiler for their team in Prophecy.
Access
Access to the Transpiler is controlled at the team level in Prophecy. To grant access, you must:
- Identify the team that should have Transpiler access
- Use that team’s team ID in the enablement steps that follow
For more information about teams in Prophecy, see Teams.
Steps
Enable Transpiler in Kubernetes
You must first enable the Transpiler at the Kubernetes level before it can be used in Prophecy.
- In your Prophecy environment, verify that the
transpilerwebpod is active. If it is not running, you need to addtranspilerwebto theenabledAppslist in two places:- First, in the
prophecyclusterresource. - Second, in the
athena-pod-metadata-cmConfigMap.
- First, in the
-
To enable the import feature, add or update this variable in your
cp-env-cmConfigMap:TRANSPILER_IMPORT_ENABLED: "true" -
To allow transpilation from tools like Alteryx into Prophecy SQL projects, add the following variable to your deployment configuration:
TRANSPILER_SQL_ENABLED: 'true'
Once these settings are in place and the pod is running, the Transpiler is enabled at the infrastructure level. You can then proceed to grant team-level access.
Fetch the team ID
Since Transpiler access is team-restricted, only members of the team ID you choose will be able to use the Transpiler. Other users in your deployment won't have access.
- Sign in to Prophecy as the team admin, and navigate to the Teams tab on the Metadata page.
- Open the team for which you are an admin and Transpiler access is required.
- Find the team ID at the end of the URL.
- Copy and save the team ID to use later.
Note: You cannot enable the Transpiler for the admin@prophecy.io team.
Generate the Prophecy access token
Next, you must generate the Prophecy access token if you haven't already done so.
- Navigate to Settings → Access Tokens, and click Generate Token.
- Enter and set the token details.
- Click Create.
- Copy and save the token to use in the following section.
Execute REST API commands
After you’ve enabled the Transpiler in Kubernetes, you need to enable it at the team level by running GraphQL API commands.
-
Run the following command to enabled the Transpiler for a team and replace the placeholders with your actual values:
curl 'https://<url>/api/md/graphql' \ -H 'Content-Type: application/json' \ --header 'Cookie:prophecy-token=<your token>' \ --data-raw $'{"query":"mutation upsertAspect($uid: String\u0021, $entityKind: EntityKind\u0021, $aspectKind: AspectKind\u0021, $aspectValue: String\u0021) {\\n upsertAspect(\\n uid: $uid\\n entityKind: $entityKind\\n aspectKind: $aspectKind\\n aspectValue: $aspectValue\\n )\\n}\\n","variables":{"uid":"<your teamID>","entityKind":"Team","aspectKind":"Info","aspectValue":" {\\"transpilerEnabled\\":true,\\"description\\":\\"\\"}"},"operationName":"upsertAspect"}'If successful, the response is:
{ "data": { "upsertAspect": 1 } } -
Next, run the following command to enable the Transpiler for a specific tool (for example, Alteryx):
curl 'https://<prophecy URL>/api/md/graphql' \ -H 'Content-Type: application/json' \ --header 'Cookie:prophecy-token=<your token>' \ --data-raw $'{"query":"mutation ($teamUID: String\u0021, $transpilerName: String\u0021,$transpilerEnabled: Boolean\u0021) {\\n updateEnabledTranspilers(\\n teamUID: $teamUID\\n transpilerName: $transpilerName\\n transpilerEnabled: $transpilerEnabled\\n ) {\\n alteryx\\n }\\n}\\n","variables":{"teamUID":"<your teamID>","transpilerName":"alteryx","transpilerEnabled":true}}'If successful, the response is:
{ "data": { "updateEnabledTranspilers": { "alteryx": true } } }
Enable Transpiler for other tools
To enable Transpiler for another tool, replace the value of transpilerName in the previous command.
Available options are:
abinitioalteryxdatastageinformaticasnaplogic
Try out the Transpiler
Refresh Prophecy and navigate to Transpiler. You should see that the Alteryx Transpiler is enabled.