# Monday, August 3, 2020

Episode 620

Tibi Covaci on Creating a GitHub Action

Tibi Covaci talks about a custom GitHub action that he created to deploy a node.js application to Azure. He describes some of the challenges he encountered and how he was able to overcome them.

Monday, August 3, 2020 8:02:00 AM (GMT Daylight Time, UTC+01:00)
# Wednesday, June 3, 2020

When working with Git, I find myself frequently typing “git status” - a useful command that shows me on which branch I am working and the number of uncommitted files that have been changed, added, and deleted. An example is shown in Fig. 1:

gp01-gitstatus
Fig. 1

As you can see, I am working on the "dgiard/posh-git-demo" branch, I have added 1 file, deleted 1 file, and changed 1 file since my last commit.

But what if I could always see this information? What if was appended to the command line, so I never had to type "git status"?

The posh-git tool provides exactly this functionality.

To install posh-git, run Windows PowerShell as an administrator.

At the PowerShell command prompt, enter  

PowerShellGet\Install-Module posh-git

and press "Y" when prompted for confirmation.

Then, enter the command 

import-module posh-git

Your command prompt will change to something like the one shown in Fig. 2.

gp02-gitposhPsPrompt
Fig. 2

Notice the text in square brackets after the path. It lists the current branch no which I am working, followed by the number of files I have added, changed, or deleted (if any) since my last commit. The red text, indicates these changes not been added to my git rep repository. If I issue a "git add", the text will change to green to indicate they are ready to commit, as shown in Fig. 3.

gp03-added
Fig. 3

After I commit the files, I only see my current branch and no uncommitted files, as shown in Fig. 4.

gp04-commit
Fig. 4

Of course, I can get more details by typing "git status"; but most of the time, this is all the information I need.


Thank you to Hattan for showing me this tool.

Wednesday, June 3, 2020 3:31:00 PM (GMT Daylight Time, UTC+01:00)
# Monday, November 4, 2019

Episode 583

Edward Thomson on GitHub Actions

GitHub Actions is a new feature at github.com allowing users to run custom code on GitHub. Edward Thomson describes this feature and how to use it.

Monday, November 4, 2019 8:59:00 AM (GMT Standard Time, UTC+00:00)
# Thursday, July 18, 2019

GCast 57:

Azure Data Factory GitHub Deployment

Learn how to set up automated deployment from a GitHub repository to an Azure Data Factory.

Azure | GCast | GitHub | Screencast | Video
Thursday, July 18, 2019 11:53:00 AM (GMT Daylight Time, UTC+01:00)
# Wednesday, July 3, 2019

Source control is an important part of software development - from collaborating with other developers to enabling continuous integration and continuous deployment to providing the ability to roll back changes.

Azure Data Factory (ADF) provides the ability to integrate with source control systems GitHub or Azure DevOps.

I will walk you through doing this, using GitHub.

Before you get started, you must have the following:

A GitHub account (Free at https://github.com)

A GitHub repository created in your account, with at least one file in it. You can easily add a "readme.md" file to a repository from within the GitHub portal.

Create an ADF service, as described in this article.

Open the "Author & Monitor" page (Fig. 1) and click the "Set up Code Repository" button (Fig. 2)

ar01-ADFOverviewPage
Fig. 1

ar02-SetupCodeRepositoryButton
Fig. 2

The "Repository Settings" blade displays, as shown in Fig. 3.

ar03-RepositoryType
Fig. 3

At the "Repository Type", dropdown, select the type of source control you are using. The current options are "Azure DevOps Git" and "GitHub". For this demo, I have selected "GitHub".

When you select a Repository type, the rest of the dialog expands with prompts relevant to that type. Fig. 4 shows the prompts when you select "GitHub".

ar04-RepositoryName
Fig. 4

I don't have a GitHub Enterprise account, so I left this checkbox unchecked.

At the "GitHub Account" field, enter the name of your GitHub account. You don't need the full URL - just the name. For example, my GitHub account name is "davidgiard", which you can find online at https://github.com/davidgiard; so, I entered "davidgiard" into the "GitHub Account" field.

The first time you enter this account, you may be prompted to sign in and to authorize Azure to access your GitHub account.

Once you enter a valid GitHub account, the "Git repository name" dropdown is populated with a list of your repositories. Select the repository you created to hold your ADF assets.

After you select a repository, you are prompted for more specific information, as shown in Fig. 5

ar05-RepositorySettings
Fig. 5

At the "Collaboration branch", select "master". If you are working in a team environment or with multiple releases, it might make sense to check into a different branch in order control when changes are merged. To do this, you will need to create a new branch in GitHub.

At the "Root folder", select a folder of the repository in which to store your ADF assets. I typically leave this at "/" to store everything in the root folder; but, if you are storing multiple ADF services in a single repository, it might make sense to organize them into separate folders.

Check the "Import existing Data Factory resources to repository" checkbox. This causes any current assets in this ADF asset to be added to the repository as soon as you save. If you have not yet created any pipelines, this setting is irrelevant.

At the "Branch to import resources into" radio buttons, select "Use Collaboration".

Click the [Save] button to save your changes and push any current assets into the GitHub repository.

Within seconds, any pipelines, linked services, or datasets in this ADF service will be pushed into GitHub. You can refresh the repository, as shown in Fig. 6.

ar06-GitHub
Fig. 6

Fig. 7 shows a pipeline asset. Notice that it is saved as JSON, which can easily be deployed to another server.

ar07-GitHub
Fig. 7

In this article, you learned how to connect your ADF service to a GitHub repository, storing and versioning all ADF assets in source control.

Wednesday, July 3, 2019 6:56:40 PM (GMT Daylight Time, UTC+01:00)