From ce267a8cac41c8a519ca1d6087618895093e8ddf Mon Sep 17 00:00:00 2001 From: rhuanjl Date: Sat, 9 Jan 2021 13:26:05 +0000 Subject: [PATCH 1/2] Add style checks --- azure-pipelines.yml | 19 ++ jenkins/check_ascii.sh | 2 +- jenkins/check_copyright.sh | 5 +- jenkins/check_eol.sh | 2 +- jenkins/check_tabs.sh | 2 +- netci.groovy | 426 ------------------------------------- 6 files changed, 25 insertions(+), 431 deletions(-) delete mode 100644 netci.groovy diff --git a/azure-pipelines.yml b/azure-pipelines.yml index e2d2f3ac80f..8d2b127e966 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -3,6 +3,25 @@ trigger: - release/* jobs: + - job: Style + timeoutInMinutes: 10 + + pool: + vmImage: 'ubuntu-latest' + + steps: + - script: jenkins/check_copyright.sh + displayName: "Copyright Check" + + - script: jenkins/check_ascii.sh + displayName: "Ascii Check" + + - script: jenkins/check_eol.sh + displayName: "EOL Check" + + - script: jenkins/check_tabs.sh + displayName: "Tab Check" + - job: CMake timeoutInMinutes: 120 strategy: diff --git a/jenkins/check_ascii.sh b/jenkins/check_ascii.sh index 0a7c931937c..2492ea05819 100755 --- a/jenkins/check_ascii.sh +++ b/jenkins/check_ascii.sh @@ -20,7 +20,7 @@ if [ -e $ERRFILE ]; then # if error file exists then there were errors >&2 echo "--------------" # leading >&2 means echo to stderr >&2 echo "--- ERRORS ---" cat $ERRFILE 1>&2 # send output to stderr so it can be redirected as error if desired - exit 1 # tell the caller there was an error (so Jenkins will fail the CI task) + exit 1 # tell the caller there was an error (so the CI task will fail) else echo "--- NO PROBLEMS DETECTED ---" fi diff --git a/jenkins/check_copyright.sh b/jenkins/check_copyright.sh index 466bdc5a235..86a04a4a703 100755 --- a/jenkins/check_copyright.sh +++ b/jenkins/check_copyright.sh @@ -18,9 +18,10 @@ rm -f $ERRFILE rm -f $ERRFILETEMP echo "Check Copyright > Begin Checking..." -git diff --name-only `git merge-base origin/$ghprbTargetBranch HEAD` HEAD | +git diff --name-only `git merge-base origin/master HEAD` HEAD | grep -v -E '\.git.*' | grep -v -E '\.xml$' | + grep -v -E '\.yml$' | grep -v -E '\.props$' | grep -v -E '\.md$' | grep -v -E '\.txt$' | @@ -59,7 +60,7 @@ if [ -e $ERRFILE ]; then # if error file exists then there were errors >&2 echo "--- ERRORS ---" cat $ERRFILE 1>&2 # send output to stderr so it can be redirected as error if desired >&2 echo "--------------" - exit 1 # tell the caller there was an error (so Jenkins will fail the CI task) + exit 1 # tell the caller there was an error (so the CI task will fail) else echo "--- NO PROBLEMS DETECTED ---" fi diff --git a/jenkins/check_eol.sh b/jenkins/check_eol.sh index 6e2a4e042e2..a05af35e152 100755 --- a/jenkins/check_eol.sh +++ b/jenkins/check_eol.sh @@ -21,7 +21,7 @@ if [ -e $ERRFILE ]; then # if error file exists then there were errors >&2 echo "--------------" # leading >&2 means echo to stderr >&2 echo "--- ERRORS ---" cat $ERRFILE 1>&2 # send output to stderr so it can be redirected as error if desired - exit 1 # tell the caller there was an error (so Jenkins will fail the CI task) + exit 1 # tell the caller there was an error (so the CI task will fail) else echo "--- NO PROBLEMS DETECTED ---" fi diff --git a/jenkins/check_tabs.sh b/jenkins/check_tabs.sh index 152cee2efeb..e727b4602c7 100755 --- a/jenkins/check_tabs.sh +++ b/jenkins/check_tabs.sh @@ -36,7 +36,7 @@ if [ -s $ERRFILE ]; then # if file exists and is non-empty then there were error >&2 echo "--- ERRORS ---" >&2 echo "" - cat $ERRFILE 1>&2 # send output to stderr so it can be redirected as error if desired + cat $ERRFILE 1>&2 # tell the caller there was an error (so the CI task will fail) exit 1 else diff --git a/netci.groovy b/netci.groovy deleted file mode 100644 index b9594fe3a82..00000000000 --- a/netci.groovy +++ /dev/null @@ -1,426 +0,0 @@ -//------------------------------------------------------------------------------------------------------- -// Copyright (C) Microsoft. All rights reserved. -// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. -//------------------------------------------------------------------------------------------------------- - -// Import the utility functionality. -import jobs.generation.Utilities - -// Grab the github project name passed in -def project = GithubProject -def branch = GithubBranchName - -def msbuildTypeMap = [ - 'debug':'chk', - 'test':'test', - 'release':'fre' -] - -// convert `machine` parameter to OS component of PR task name -def machineTypeToOSTagMap = [ - 'Windows 7': 'Windows 7', // 'latest-or-auto' -> Windows Server 2008 R2 ~= Windows 7 - 'Windows_NT': 'Windows 8.1', // 'latest-or-auto' -> Windows Server 2012 R2 ~= Windows 8.1 aka Blue - 'windows.10.amd64.clientrs4.devex.open': 'Windows 10', // = Windows 10 RS4 with Dev 15.7 - 'Ubuntu16.04': 'Ubuntu', - 'OSX.1011.Amd64.Chakra.Open': 'OSX' -] - -def defaultMachineTag = 'latest-or-auto' - -def legacyWindows7Machine = 'Windows 7' -def legacyWindows7MachineTag = defaultMachineTag - -def legacyWindows8Machine = 'Windows_NT' -def legacyWindows8MachineTag = defaultMachineTag - -def latestWindowsMachine = 'windows.10.amd64.clientrs4.devex.open' // Windows 10 RS4 with Dev 15.7 -def latestWindowsMachineTag = null // all information is included in the machine name above - -def dailyRegex = 'dailies' - -// --------------- -// HELPER CLOSURES -// --------------- - -def CreateBuildTask = { isPR, buildArch, buildType, machine, machineTag, configTag, buildExtra, testExtra, runCodeAnalysis, excludeConfigIf, nonDefaultTaskSetup -> - if (excludeConfigIf && excludeConfigIf(isPR, buildArch, buildType)) { - return // early exit: we don't want to create a job for this configuration - } - - def config = "${buildArch}_${buildType}" - config = (configTag == null) ? config : "${configTag}_${config}" - - // params: Project, BaseTaskName, IsPullRequest (appends '_prtest') - def jobName = Utilities.getFullJobName(project, config, isPR) - - def testableConfig = buildType in ['debug', 'test'] && buildArch != 'arm' - def analysisConfig = buildType in ['release'] && runCodeAnalysis - - def buildScript = "call .\\jenkins\\buildone.cmd ${buildArch} ${buildType} " - buildScript += buildExtra ?: '' - buildScript += analysisConfig ? ' "/p:runcodeanalysis=true"' : '' - def testScript = "call .\\jenkins\\testone.cmd ${buildArch} ${buildType} " - testScript += testExtra ?: '' - def analysisScript = '.\\Build\\scripts\\check_prefast_error.ps1 . CodeAnalysis.err' - - def newJob = job(jobName) { - // This opens the set of build steps that will be run. - // This looks strange, but it is actually a method call, with a - // closure as a param, since Groovy allows method calls without parens. - // (Compare with '.each' method used above.) - steps { - batchFile(buildScript) // run the parameter as if it were a batch file - if (testableConfig) { - batchFile(testScript) - } - if (analysisConfig) { - powerShell(analysisScript) - } - } - } - - def msbuildType = msbuildTypeMap.get(buildType) - def msbuildFlavor = "build_${buildArch}${msbuildType}" - def archivalString = "test/${msbuildFlavor}.*,test/logs/**" - archivalString += analysisConfig ? ',CodeAnalysis.err' : '' - Utilities.addArchival(newJob, archivalString, - '', // no exclusions from archival - false, // doNotFailIfNothingArchived=false ~= failIfNothingArchived - false) // archiveOnlyIfSuccessful=false ~= archiveAlways - - if (machineTag == null) { - // note: this is a different overload and not equivalent to calling setMachineAffinity(_,_,null) - Utilities.setMachineAffinity(newJob, machine) - } else { - Utilities.setMachineAffinity(newJob, machine, machineTag) - } - - Utilities.standardJobSetup(newJob, project, isPR, "*/${branch}") - - if (nonDefaultTaskSetup == null) { - if (isPR) { - def osTag = machineTypeToOSTagMap.get(machine) - Utilities.addGithubPRTriggerForBranch(newJob, branch, "${osTag} ${config}") - } else { - Utilities.addGithubPushTrigger(newJob) - } - } else { - // nonDefaultTaskSetup is e.g. DailyBuildTaskSetup (which sets up daily builds) - // These jobs will only be configured for the branch specified below, - // which is the name of the branch netci.groovy was processed for. - // See list of such branches at: - // https://github.com/dotnet/dotnet-ci/blob/master/jobs/data/repolist.txt - nonDefaultTaskSetup(newJob, isPR, config) - } -} - -def CreateBuildTasks = { machine, machineTag, configTag, buildExtra, testExtra, runCodeAnalysis, excludeConfigIf, nonDefaultTaskSetup -> - [true, false].each { isPR -> - ['x86', 'x64', 'arm'].each { buildArch -> - ['debug', 'test', 'release'].each { buildType -> - CreateBuildTask(isPR, buildArch, buildType, machine, machineTag, configTag, buildExtra, testExtra, runCodeAnalysis, excludeConfigIf, nonDefaultTaskSetup) - } - } - } -} - -def CreateXPlatBuildTask = { isPR, buildType, staticBuild, machine, platform, configTag, - xplatBranch, nonDefaultTaskSetup, customOption, testVariant, extraBuildParams -> - - def config = (platform == "osx" ? "osx_${buildType}" : "linux_${buildType}") - def numConcurrentCommand = (platform == "osx" ? "sysctl -n hw.logicalcpu" : "nproc") - - config = (configTag == null) ? config : "${configTag}_${config}" - config = staticBuild ? "static_${config}" : "shared_${config}" - config = customOption ? customOption.replaceAll(/[-]+/, "_") + "_" + config : config - - // params: Project, BaseTaskName, IsPullRequest (appends '_prtest') - def jobName = Utilities.getFullJobName(project, config, isPR) - - def infoScript = "bash jenkins/get_system_info.sh --${platform}" - def buildFlag = buildType == "release" ? "" : (buildType == "debug" ? "--debug" : "--test-build") - def staticFlag = staticBuild ? "--static" : "" - def swbCheckFlag = (platform == "linux" && buildType == "debug" && !staticBuild) ? "--wb-check" : ""; - def icuFlag = (platform == "osx" ? "--icu=/Users/DDITLABS/homebrew/opt/icu4c/include" : "") - def compilerPaths = (platform == "osx") ? "" : "--cxx=/usr/bin/clang++-3.9 --cc=/usr/bin/clang-3.9" - def buildScript = "bash ./build.sh ${staticFlag} -j=`${numConcurrentCommand}` ${buildFlag} " + - "${swbCheckFlag} ${compilerPaths} ${icuFlag} ${customOption} ${extraBuildParams}" - def icuLibFlag = (platform == "osx" ? "--iculib=/Users/DDITLABS/homebrew/opt/icu4c" : "") - def testScript = "bash test/runtests.sh ${icuLibFlag} \"${testVariant}\"" - - def newJob = job(jobName) { - steps { - shell(infoScript) - shell(buildScript) - shell(testScript) - } - } - - def archivalString = "out/build.log" - Utilities.addArchival(newJob, archivalString, - '', // no exclusions from archival - true, // doNotFailIfNothingArchived=false ~= failIfNothingArchived (true ~= doNotFail) - false) // archiveOnlyIfSuccessful=false ~= archiveAlways - - if (platform == "osx") { - Utilities.setMachineAffinity(newJob, machine) // OSX machine string contains all info already - } else { - Utilities.setMachineAffinity(newJob, machine, defaultMachineTag) - } - Utilities.standardJobSetup(newJob, project, isPR, "*/${branch}") - - if (nonDefaultTaskSetup == null) { - if (isPR) { - def osTag = machineTypeToOSTagMap.get(machine) - Utilities.addGithubPRTriggerForBranch(newJob, xplatBranch, "${osTag} ${config}") - } else { - Utilities.addGithubPushTrigger(newJob) - } - } else { - // nonDefaultTaskSetup is e.g. DailyBuildTaskSetup (which sets up daily builds) - // These jobs will only be configured for the branch specified below, - // which is the name of the branch netci.groovy was processed for. - // See list of such branches at: - // https://github.com/dotnet/dotnet-ci/blob/master/jobs/data/repolist.txt - nonDefaultTaskSetup(newJob, isPR, config) - } -} - -// Generic task to trigger clang-based cross-plat build tasks -def CreateXPlatBuildTasks = { machine, platform, configTag, xplatBranch, nonDefaultTaskSetup, extraBuildParams -> - [true, false].each { isPR -> - CreateXPlatBuildTask(isPR, "test", "", machine, platform, - configTag, xplatBranch, nonDefaultTaskSetup, "--no-jit", "--variants disable_jit", extraBuildParams) - - ['debug', 'test', 'release'].each { buildType -> - def staticBuildConfigs = [true, false] - if (platform == "osx") { - staticBuildConfigs = [true] - } - - staticBuildConfigs.each { staticBuild -> - CreateXPlatBuildTask(isPR, buildType, staticBuild, machine, platform, - configTag, xplatBranch, nonDefaultTaskSetup, "", "", extraBuildParams) - } - } - } -} - -def DailyBuildTaskSetup = { newJob, isPR, triggerName, groupRegex -> - // The addition of triggers makes the job non-default in GitHub. - if (isPR) { - def triggerRegex = "(${dailyRegex}|${groupRegex}|${triggerName})" - Utilities.addGithubPRTriggerForBranch(newJob, branch, - triggerName, // GitHub task name - "(?i).*test\\W+${triggerRegex}.*") - } else { - Utilities.addPeriodicTrigger(newJob, '@daily') - } -} - -def CreateStyleCheckTasks = { taskString, taskName, checkName -> - [true, false].each { isPR -> - def jobName = Utilities.getFullJobName(project, taskName, isPR) - - def newJob = job(jobName) { - steps { - shell(taskString) - } - } - - Utilities.standardJobSetup(newJob, project, isPR, "*/${branch}") - if (isPR) { - // Set PR trigger. - Utilities.addGithubPRTriggerForBranch(newJob, branch, checkName) - } else { - // Set a push trigger - Utilities.addGithubPushTrigger(newJob) - } - - Utilities.setMachineAffinity(newJob, 'Ubuntu16.04', defaultMachineTag) - } -} - -// ---------------- -// INNER LOOP TASKS -// ---------------- - -// The latest machine seems to have a configuration problem preventing us from building ARM. -// For now, build ARM on the LKG config, Legacy Windows 8.1 (Blue) config. -// TODO When the Windows 10 configuration is updated to fix ARM builds, unify this config split. -CreateBuildTasks(latestWindowsMachine, latestWindowsMachineTag, null, null, "-win10", true, - /* excludeConfigIf */ { isPR, buildArch, buildType -> (buildArch == 'arm') }, null) // configures everything except ARM -CreateBuildTasks(legacyWindows8Machine, legacyWindows8MachineTag, null, null, "-winBlue", true, - /* excludeConfigIf */ { isPR, buildArch, buildType -> (buildArch != 'arm') }, null) // configures ARM - -// Add some additional daily configs to trigger per-PR as a quality gate: -// x64_debug Slow Tests -CreateBuildTask(true, 'x64', 'debug', - latestWindowsMachine, latestWindowsMachineTag, 'ci_slow', null, '-win10 -includeSlow', false, null, null) -// x64_debug DisableJIT -CreateBuildTask(true, 'x64', 'debug', - latestWindowsMachine, latestWindowsMachineTag, 'ci_disablejit', '"/p:BuildJIT=false"', '-win10 -disablejit', false, null, null) -// x64_debug Lite -CreateBuildTask(true, 'x64', 'debug', - latestWindowsMachine, latestWindowsMachineTag, 'ci_lite', '"/p:BuildLite=true"', '-win10 -lite', false, null, null) -// x64_debug Legacy (Windows 7) -CreateBuildTask(true, 'x64', 'debug', - legacyWindows7Machine, legacyWindows7MachineTag, 'ci_legacy7', 'msbuild14', '-win7 -includeSlow', false, null, null) -// x64_debug Legacy (Windows 8.1 (Blue)) -CreateBuildTask(true, 'x64', 'debug', - legacyWindows8Machine, legacyWindows8MachineTag, 'ci_legacy8', 'msbuild14', '-winBlue -includeSlow', false, null, null) - -// ----------------- -// DAILY BUILD TASKS -// ----------------- - -if (!branch.endsWith('-ci')) { - // build and test on the legacy configuration (Windows 7 + VS 2015 (Dev14)) - CreateBuildTasks(legacyWindows7Machine, legacyWindows7MachineTag, 'daily_legacy7', 'msbuild14', '-win7 -includeSlow', false, - /* excludeConfigIf */ { isPR, buildArch, buildType -> (buildArch == 'arm') }, // excludes ARM - /* nonDefaultTaskSetup */ { newJob, isPR, config -> - DailyBuildTaskSetup(newJob, isPR, - "Windows 7 ${config}", - 'legacy7?\\s+tests)')}) - - // build and test on the legacy configuration (Windows 8.1 (Blue) + VS 2015 (Dev14)) - CreateBuildTasks(legacyWindows8Machine, legacyWindows8MachineTag, 'daily_legacy8', 'msbuild14', '-winBlue -includeSlow', false, - /* excludeConfigIf */ null, // ARM builds previously worked on this configuration, so don't exclude them unless we explicitly drop support - /* nonDefaultTaskSetup */ { newJob, isPR, config -> - DailyBuildTaskSetup(newJob, isPR, - "Windows 8 ${config}", - 'legacy8?\\s+tests')}) - - // build and test on the latest configuration (RS4 + VS 2017 Dev 15.7) with -includeSlow - // TODO When the Windows 10 configuration is updated to fix ARM builds, unify this config split. - CreateBuildTasks(latestWindowsMachine, latestWindowsMachineTag, 'daily_slow', null, '-win10 -includeSlow', false, - /* excludeConfigIf */ { isPR, buildArch, buildType -> (buildArch == 'arm') }, // configures everything except ARM - /* nonDefaultTaskSetup */ { newJob, isPR, config -> - DailyBuildTaskSetup(newJob, isPR, - "Windows ${config}", - 'slow\\s+tests')}) - CreateBuildTasks(legacyWindows8Machine, legacyWindows8MachineTag, 'daily_slow', null, '-winBlue -includeSlow', false, - /* excludeConfigIf */ { isPR, buildArch, buildType -> (buildArch != 'arm') }, // configures ARM - /* nonDefaultTaskSetup */ { newJob, isPR, config -> - DailyBuildTaskSetup(newJob, isPR, - "Windows ${config}", - 'slow\\s+tests')}) - - // build and test on the latest configuration (RS4 + VS 2017 Dev 15.7) with JIT disabled - // TODO When the Windows 10 configuration is updated to fix ARM builds, unify this config split. - CreateBuildTasks(latestWindowsMachine, latestWindowsMachineTag, 'daily_disablejit', '"/p:BuildJIT=false"', '-win10 -disablejit', true, - /* excludeConfigIf */ { isPR, buildArch, buildType -> (buildArch == 'arm') }, // configures everything except ARM - /* nonDefaultTaskSetup */ { newJob, isPR, config -> - DailyBuildTaskSetup(newJob, isPR, - "Windows ${config}", - '(disablejit|nojit)\\s+tests')}) - CreateBuildTasks(legacyWindows8Machine, legacyWindows8MachineTag, 'daily_disablejit', '"/p:BuildJIT=false"', '-winBlue -disablejit', true, - /* excludeConfigIf */ { isPR, buildArch, buildType -> (buildArch != 'arm') }, // configures ARM - /* nonDefaultTaskSetup */ { newJob, isPR, config -> - DailyBuildTaskSetup(newJob, isPR, - "Windows ${config}", - '(disablejit|nojit)\\s+tests')}) - - // build and test on the latest configuration (RS4 + VS 2017 Dev 15.7) with Lite build - // TODO When the Windows 10 configuration is updated to fix ARM builds, unify this config split. - CreateBuildTasks(latestWindowsMachine, latestWindowsMachineTag, 'daily_lite', '"/p:BuildLite=true"', '-win10 -lite', true, - /* excludeConfigIf */ { isPR, buildArch, buildType -> (buildArch == 'arm') }, // configures everything except ARM - /* nonDefaultTaskSetup */ { newJob, isPR, config -> - DailyBuildTaskSetup(newJob, isPR, - "Windows ${config}", - 'lite\\s+tests')}) - CreateBuildTasks(legacyWindows8Machine, legacyWindows8MachineTag, 'daily_lite', '"/p:BuildLite=true"', '-winBlue -lite', true, - /* excludeConfigIf */ { isPR, buildArch, buildType -> (buildArch != 'arm') }, // configures ARM - /* nonDefaultTaskSetup */ { newJob, isPR, config -> - DailyBuildTaskSetup(newJob, isPR, - "Windows ${config}", - 'lite\\s+tests')}) -} - -// ---------------- -// CODE STYLE TASKS -// ---------------- - -CreateStyleCheckTasks('./jenkins/check_copyright.sh', 'ubuntu_check_copyright', 'Copyright Check') -CreateStyleCheckTasks('./jenkins/check_eol.sh', 'ubuntu_check_eol', 'EOL Check') -CreateStyleCheckTasks('./jenkins/check_tabs.sh', 'ubuntu_check_tabs', 'Tab Check') -CreateStyleCheckTasks('./jenkins/check_ascii.sh', 'ubuntu_check_ascii', 'ASCII Check') - -// -------------- -// XPLAT BRANCHES -// -------------- - -// Explicitly enumerate xplat-incompatible branches, because we don't anticipate any future incompatible branches -def isXPlatCompatibleBranch = !(branch in ['release/1.1', 'release/1.1-ci', 'release/1.2', 'release/1.2-ci']) - -// Include these explicitly-named branches -def isXPlatDailyBranch = branch in ['master', 'linux', 'xplat'] -// Include some release/* branches (ignore branches ending in '-ci') -if (branch.startsWith('release') && !branch.endsWith('-ci')) { - // Allows all current and future release/* branches on which we should run daily builds of XPlat configs. - // RegEx matches branch names we should ignore (e.g. release/1.1, release/1.2, release/1.2-pre) - includeReleaseBranch = !(branch =~ /^release\/(1\.[12](\D.*)?)$/) - isXPlatDailyBranch |= includeReleaseBranch -} - -// ----------------- -// LINUX BUILD TASKS -// ----------------- - -if (isXPlatCompatibleBranch) { - def osString = 'Ubuntu16.04' - - // PR and CI checks - CreateXPlatBuildTasks(osString, "linux", "ubuntu", branch, null, "") - - // Create a PR/continuous task to check ubuntu/static/debug/no-icu - [true, false].each { isPR -> - CreateXPlatBuildTask(isPR, "debug", true, osString, "linux", - "ubuntu", branch, null, "--no-icu", "--not-tag exclude_noicu", "") - } - - // daily builds - if (isXPlatDailyBranch) { - CreateXPlatBuildTasks(osString, "linux", "daily_ubuntu", branch, - /* nonDefaultTaskSetup */ { newJob, isPR, config -> - DailyBuildTaskSetup(newJob, isPR, - "Ubuntu ${config}", - 'linux\\s+tests')}, - /* extraBuildParams */ "--extra-defines=PERFMAP_TRACE_ENABLED=1") - } -} - -// --------------- -// OSX BUILD TASKS -// --------------- - -if (isXPlatCompatibleBranch) { - def osString = 'OSX.1011.Amd64.Chakra.Open' - - // PR and CI checks - CreateXPlatBuildTasks(osString, "osx", "osx", branch, null, "") - - // daily builds - if (isXPlatDailyBranch) { - CreateXPlatBuildTasks(osString, "osx", "daily_osx", branch, - /* nonDefaultTaskSetup */ { newJob, isPR, config -> - DailyBuildTaskSetup(newJob, isPR, - "OSX ${config}", - 'linux\\s+tests')}, - /* extraBuildParams */ "") - } -} - -// ------------ -// HELP MESSAGE -// ------------ - -Utilities.createHelperJob(this, project, branch, - "Welcome to the ${project} Repository", // This is prepended to the help message - "For additional documentation on ChakraCore CI checks, please see:\n" + - "\n" + - "* https://github.com/Microsoft/ChakraCore/wiki/Jenkins-CI-Checks\n" + - "* https://github.com/Microsoft/ChakraCore/wiki/Jenkins-Build-Triggers\n" + - "* https://github.com/Microsoft/ChakraCore/wiki/Jenkins-Repro-Steps\n" + - "\n" + - "Have a nice day!") // This is appended to the help message. You might put known issues here. From 106ec059191955755e058ce905381668c3d7f045 Mon Sep 17 00:00:00 2001 From: rhuanjl Date: Sat, 9 Jan 2021 13:59:18 +0000 Subject: [PATCH 2/2] Copyright update --- LICENSE.txt | 2 +- azure-pipelines.yml | 5 +++++ jenkins/check_ascii.sh | 1 + jenkins/check_copyright.py | 4 +++- jenkins/check_copyright.sh | 1 + jenkins/check_eol.sh | 1 + jenkins/check_tabs.sh | 1 + 7 files changed, 13 insertions(+), 2 deletions(-) diff --git a/LICENSE.txt b/LICENSE.txt index 7c7cc72305e..88fc9b41992 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -2,7 +2,7 @@ The MIT License (MIT) Copyright (c) Microsoft Corporation All rights reserved. -Copyright (c) 2021 ChakraCore Project Contributors +Copyright (c) 2021 ChakraCore Project Contributors. All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 8d2b127e966..e9e5448ee52 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -1,3 +1,8 @@ +#------------------------------------------------------------------------------------------------------- +# Copyright (c) 2021 ChakraCore Project Contributors. All rights reserved. +# Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. +#------------------------------------------------------------------------------------------------------- + trigger: - master - release/* diff --git a/jenkins/check_ascii.sh b/jenkins/check_ascii.sh index 2492ea05819..16bb7b0269b 100755 --- a/jenkins/check_ascii.sh +++ b/jenkins/check_ascii.sh @@ -1,5 +1,6 @@ #------------------------------------------------------------------------------------------------------- # Copyright (C) Microsoft. All rights reserved. +# Copyright (c) 2021 ChakraCore Project Contributors. All rights reserved. # Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. #------------------------------------------------------------------------------------------------------- diff --git a/jenkins/check_copyright.py b/jenkins/check_copyright.py index 0c7867b9967..80b207d01b3 100644 --- a/jenkins/check_copyright.py +++ b/jenkins/check_copyright.py @@ -1,5 +1,6 @@ #------------------------------------------------------------------------------------------------------- # Copyright (C) Microsoft. All rights reserved. +# Copyright (c) 2021 ChakraCore Project Contributors. All rights reserved. # Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. #------------------------------------------------------------------------------------------------------- @@ -13,6 +14,7 @@ copyright_lines = [ r'-------------------------------------------------------------------------------------------------------', r' Copyright \(C\) Microsoft( Corporation and contributors)?\. All rights reserved\.', + r' Copyright \(c\) 2021 ChakraCore Project Contributors\. All rights reserved\.', r' Licensed under the MIT license\. See LICENSE\.txt file in the project root for full license information\.', r'.*' # the above should always be followed by at least one other line, so make sure that line is present ] @@ -33,7 +35,7 @@ def report_incorrect(file_name, pairs): # found a problem so report the problem to the caller and exit - print(file_name, "... does not contain a correct Microsoft copyright notice.\n") + print(file_name, "... does not contain a correct copyright notice.\n") # print the relevant lines to help the reader find the problem for (_, line) in pairs: print(" ", line, end="") diff --git a/jenkins/check_copyright.sh b/jenkins/check_copyright.sh index 86a04a4a703..4e9afcc6c1b 100755 --- a/jenkins/check_copyright.sh +++ b/jenkins/check_copyright.sh @@ -1,5 +1,6 @@ #------------------------------------------------------------------------------------------------------- # Copyright (C) Microsoft. All rights reserved. +# Copyright (c) 2021 ChakraCore Project Contributors. All rights reserved. # Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. #------------------------------------------------------------------------------------------------------- diff --git a/jenkins/check_eol.sh b/jenkins/check_eol.sh index a05af35e152..3d3f68a17ad 100755 --- a/jenkins/check_eol.sh +++ b/jenkins/check_eol.sh @@ -1,5 +1,6 @@ #------------------------------------------------------------------------------------------------------- # Copyright (C) Microsoft. All rights reserved. +# Copyright (c) 2021 ChakraCore Project Contributors. All rights reserved. # Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. #------------------------------------------------------------------------------------------------------- diff --git a/jenkins/check_tabs.sh b/jenkins/check_tabs.sh index e727b4602c7..7c749adf861 100755 --- a/jenkins/check_tabs.sh +++ b/jenkins/check_tabs.sh @@ -1,5 +1,6 @@ #------------------------------------------------------------------------------------------------------- # Copyright (C) Microsoft. All rights reserved. +# Copyright (c) 2021 ChakraCore Project Contributors. All rights reserved. # Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. #-------------------------------------------------------------------------------------------------------