forked from microsoft/PowerAppsTestAutomation
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathazure-pipelines.yml
78 lines (74 loc) · 2.77 KB
/
azure-pipelines.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# File: azure-pipelines.yml
# Build Name / Format
name: PowerAppsTestAutomation-$(date:yyyyMMdd)$(rev:.r)
resources:
repositories:
- repository: PowerAppsTestAutomation
type: github
# GitHub Repo(e.g. <FORK>/PowerAppsTestAutomation)
# Recommended to Fork or Duplicate if custom auth flows are required
name: entyer/PowerAppsTestAutomation
ref: master
# Name of the GitHub OAuth ADO Service Connection
endpoint: github.com_entyer
parameters:
- name: image
displayName: Pool Image
type: string
# See https://github.com/MicrosoftDocs/azure-devops-docs/blob/master/docs/pipelines/agents/hosted.md#use-a-microsoft-hosted-agent for more pool types
default: windows-latest
values:
- windows-latest
- vs2017-win2016
- windows-2019
- name: BrowserType
displayName: Browser Type
type: string
default: All
values:
- Chrome
- Firefox
- All
- name: LoginMethod
displayName: Login Type # See: https://docs.microsoft.com/en-us/office365/servicedescriptions/office-365-platform-service-description/user-account-management
type: string
default: CloudIdentity
values:
- CloudIdentity # Uses the default Office 365 Sign-In Service for authentication
- FederatedIdentity # Uses a Custom Login Action method using AD FS 2.0 or other Security Token Services for authentication. Custom code is required.
- PassThrough # Federated login scenario where the provided user credential is automatically logged in, requires special agent configurations
jobs:
- job: "PowerAppsTestFrameworkAutomation"
pool:
vmImage: ${{ parameters.image }}
demands:
- msbuild
- visualstudio
- vstest
variables:
- name: PortalUrl
value: https://make.powerapps.com
# Browser PrivateMode usage (true/false)
- name: PrivateMode
value: true
# FileName where TestAutomationURLs are stored in JSON format
- name: TestUrlFileName
value: TestURLs.json
# Project name of repo containing TestAutomationURLs (spaces should be encoded as %20)
# Example: Contoso Test Framework --> Contoso%20Test%20Framework
- name: LocalProjectName
value: PowerAppsTestAutomation
steps:
- checkout: self
- checkout: PowerAppsTestAutomation
#- template: localsteps.yml # Provide optional local YAML template here
- template: frameworksteps.yml@PowerAppsTestAutomation
parameters:
OnlineUsername: $(OnlineUsername)
OnlinePassword: $(OnlinePassword)
OnlineUrl: $(PortalUrl)
BrowserType: ${{ parameters.BrowserType }}
# File location format is /s/TeamProjectName/FilePathToTestAutomationURLs.json
TestAutomationURLFilePath: $(Build.SourcesDirectory)\$(LocalProjectName)\Samples\$(TestUrlFileName)
UsePrivateMode: $(PrivateMode)
LoginMethod: ${{ parameters.LoginMethod }}