[Progress Communities] [Progress OpenEdge ABL] Forum Post: 2020.1 Progress DataDirect for JDBC for GitHub driver: Initial Preview Release

  • Thread starter Avadhoot Kulkarni
  • Start date
Status
Not open for further replies.
A

Avadhoot Kulkarni

Guest
Feature Description: The Progress DataDirect for JDBC for GitHub is a driver that supports SQL read‐only access for JDBC applications to GitHub services. The driver provides access to data in GitHub Enterprise and GitHub Cloud, which can be pulled into a data visualization tool to get important insights into engineering operations. In addition, the driver employs a SQL engine component that supports to SQL constructs to provide the most comprehensive SQL support and JDBC standard‐based connectivity to Business Intelligence(BI) and Extract-Transform-Load(ETL) tools. To enable SQL access to GitHub services, the driver creates a relational map of the GitHub data model and translates SQL statements to GitHub REST API requests. Minimum Requirements: The driver is compatible with JDBC 2.0, 3.0, 4.0, 4.1, and 4.2. The driver requires a Java Virtual Machine (JVM) that is Java SE 8 or higher, including Oracle JDK, OpenJDK, and IBM SDK (Java) distributions. Authentication The GitHub driver supports the following authentication methods: Basic Authentication OAuth 2.0 Authentication Connection information required to establish a connection to GitHub services using Basic Authentication: Server Name Username Password Connection information required to establish a connection to GitHub services using OAuth: Server Name Client ID Client Secret Auth URI Token URI Redirect URI Authorization Code You must register an application with GitHub in order to obtain the required connection information. See the GitHub documentation for specific information on this process: Creating an OAuth App Alternatively, you can also use the personal access token generated from the GitHub website as Access Token in OAuth 2.0 connection or as password in Basic Authentication. Important Notes: Many of the GitHub objects need mandatory filters to fetch the relevant data. You can either provide them as ‘WHERE’ condition in SQL queries or can configure them at connection time using a semicolon-separated string “key1=value1; key2=value2;” as a value to a connection option called “Default Query Options”. If there is a conflict between the WHERE condition value and default query option value, then the “WHERE” condition value will take precedence. e.g. DefaultQueryOptions=(orgName=org_name;userName=user_name;repoName=repo_name;projectId=project_Id;columnId=column_Id;) Access tokens generally do not expire until the token owner or the OAuth app owner explicitly deauthorizes the token. The driver supports both enterprise server and cloud instance of GitHub. For public cloud instances, the server name would always be “api.github.com” and for enterprise instances it might look something like “github.MyEnterpriseDomain.com”. There is also a difference in AuthURI and TokenURI values for Cloud and Enterprise versions. Please read details about these options in the user guide document. Configuration Manager The driver includes a browser-based tool, Progress DataDirect GitHub Configuration Manager, that allows you to generate connection URLs, fetch OAuth tokens, test connections, and execute test queries. To open the Configuration Manager, double-click the driver-jar file or execute the following command at a command prompt in the directory containing your driver jar file: java -jar github.jar From the browser window, provide values for the connection properties you want to configure in the corresponding fields. A connection URL will generate in the Connection String field as you provide settings. Documentation for the various connection properties will be displayed in the right pane of the Configuration Manager when clicking on any property, or its text entry box. Limitations/Known Issues: The driver does not support two-factor authentications. If you execute a query on a child table that has mandatory filters, the driver will return an error message with the names of the corresponding parent columns mentioned in it. In the GitHub Configuration Manager, if you enter an invalid client secret value while fetching the OAuth tokens, the driver will not return an error message. In the GitHub Configuration Manager, you may face challenges in fetching OAuth tokens from your GitHub Enterprise OAuth app, as this may give “Invalid redirect URI” error as the Enterprise instance needs to know the exact redirect URI including the port. As the Configuration Manager uses dynamic ports to avoid port conflicts, this may not work. Installation Guides: Progress® DataDirect® Installation Notes: The preview installation will expire in 15 days after it is installed. No control numbers are required. For Serial Number, you can enter a numeric value, such as 123. Use Case: JDBC compliant applications needing connectivity to GitHub to perform read-only queries. BI tools for data analysis. ETL tools for performing extract operations (reading data) from GitHub. Requested Feedback: Are you able to use the driver out of the box? If not, please provide details about the challenges you faced/are facing. What are your primary use cases, and is this driver solving them? Is the driver's performance acceptable for your primary use case? If not, please provide details on your use case: What operation is performed? What is the size of data? What are the expectations? What application do you envision building with the data available from GitHub? What other data source connectivity you would need to make that vision a reality. Download Information: User's Guide: https://progress.thruinc.net/Publishing/Link.aspx?LinkID=2PZ20FH3UWA53 Windows Installer: https://progress.thruinc.net/Publishing/Link.aspx?LinkID=1L49E3SE7WE8C All-platforms Installer: https://progress.thruinc.net/Publishing/Link.aspx?LinkID=30LI5V7M2M66Q

Continue reading...
 
Status
Not open for further replies.
Top