Skip to content

Check for new core technologies #659

Check for new core technologies

Check for new core technologies #659

name: Check for new core technologies
on:
schedule:
- cron: '0 10 * * *'
workflow_dispatch:
inputs:
daysToSearch:
description: "Days of NuGet history to search for package updates"
default: "1"
type: string
testMode:
description: "If checked, no notification message will be sent to the team channel, nor will any Github issues be created."
type: boolean
default: false
env:
DOTNET_NOLOGO: true
permissions:
contents: read
jobs:
nuget-slack-notifications:
name: Check for core technology package updates
runs-on: ubuntu-latest
permissions:
issues: write
continue-on-error: false
env:
scan-tool-path: ${{ github.workspace }}/.github/workflows/scripts/nugetSlackNotifications
steps:
- name: Harden Runner
uses: step-security/harden-runner@f086349bfa2bd1361f7909c78558e816508cdc10 # v2.8.0
with:
egress-policy: audit # Leave it audit mode
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
with:
fetch-depth: 0
- name: Add agent via nuget and then build the tool
run: |
cd ${{ env.scan-tool-path }}
dotnet add nugetSlackNotifications.csproj package NewRelic.Agent
dotnet build
- name: Check for updates to core technology packages
run: |
if [ ${{ inputs.daysToSearch }} != "" ]; then
export DOTTY_DAYS_TO_SEARCH=${{ inputs.daysToSearch }}
fi
if [ "${{ inputs.testMode }}" == "true" ]; then
export DOTTY_TEST_MODE="True"
fi
cd ${{ env.scan-tool-path }}/bin/Debug/net6.0
dotnet ./nugetSlackNotifications.dll ${{ env.nugets }}
shell: bash
env:
DOTTY_WEBHOOK: ${{ secrets.SLACK_NUGET_NOTIFICATIONS_WEBHOOK }}
DOTTY_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CORECLR_ENABLE_PROFILING: 1
CORECLR_NEWRELIC_HOME: ${{ env.scan-tool-path }}/bin/Debug/net6.0/newrelic
CORECLR_PROFILER: "{36032161-FFC0-4B61-B559-F6C5D41BAE5A}"
CORECLR_PROFILER_PATH: ${{ env.scan-tool-path }}/bin/Debug/net6.0/newrelic/libNewRelicProfiler.so
NEW_RELIC_APP_NAME: Dotty
NEW_RELIC_HOST: staging-collector.newrelic.com
NEW_RELIC_LICENSE_KEY: ${{ secrets.STAGING_LICENSE_KEY }}
nugets:
"amazon.lambda.apigatewayevents
amazon.lambda.applicationloadbalancerevents
amazon.lambda.cloudwatchevents
amazon.lambda.dynamodbevents
amazon.lambda.kinesisevents
amazon.lambda.kinesisfirehoseevents
amazon.lambda.s3events
amazon.lambda.simpleemailevents
amazon.lambda.snsevents
amazon.lambda.sqsevents
elasticsearch.net
elastic.clients.elasticsearch
log4net
microsoft.extensions.logging
microsoft.data.sqlclient
microsoft.net.http
mongodb.driver
mysql.data
mysqlconnector
nest
nlog
rabbitmq.client
restsharp
serilog
stackexchange.redis
system.data.sqlclient"