···11+## Ignore Visual Studio temporary files, build results, and
22+## files generated by popular Visual Studio add-ons.
33+##
44+## Get latest from `dotnet new gitignore`
55+66+# dotenv files
77+.env
88+99+# User-specific files
1010+*.rsuser
1111+*.suo
1212+*.user
1313+*.userosscache
1414+*.sln.docstates
1515+1616+# User-specific files (MonoDevelop/Xamarin Studio)
1717+*.userprefs
1818+1919+# Mono auto generated files
2020+mono_crash.*
2121+2222+# Build results
2323+[Dd]ebug/
2424+[Dd]ebugPublic/
2525+[Rr]elease/
2626+[Rr]eleases/
2727+x64/
2828+x86/
2929+[Ww][Ii][Nn]32/
3030+[Aa][Rr][Mm]/
3131+[Aa][Rr][Mm]64/
3232+bld/
3333+[Bb]in/
3434+[Oo]bj/
3535+[Ll]og/
3636+[Ll]ogs/
3737+3838+# Visual Studio 2015/2017 cache/options directory
3939+.vs/
4040+# Uncomment if you have tasks that create the project's static files in wwwroot
4141+#wwwroot/
4242+4343+# Visual Studio 2017 auto generated files
4444+Generated\ Files/
4545+4646+# MSTest test Results
4747+[Tt]est[Rr]esult*/
4848+[Bb]uild[Ll]og.*
4949+5050+# NUnit
5151+*.VisualState.xml
5252+TestResult.xml
5353+nunit-*.xml
5454+5555+# Build Results of an ATL Project
5656+[Dd]ebugPS/
5757+[Rr]eleasePS/
5858+dlldata.c
5959+6060+# Benchmark Results
6161+BenchmarkDotNet.Artifacts/
6262+6363+# .NET
6464+project.lock.json
6565+project.fragment.lock.json
6666+artifacts/
6767+6868+# Tye
6969+.tye/
7070+7171+# ASP.NET Scaffolding
7272+ScaffoldingReadMe.txt
7373+7474+# StyleCop
7575+StyleCopReport.xml
7676+7777+# Files built by Visual Studio
7878+*_i.c
7979+*_p.c
8080+*_h.h
8181+*.ilk
8282+*.meta
8383+*.obj
8484+*.iobj
8585+*.pch
8686+*.pdb
8787+*.ipdb
8888+*.pgc
8989+*.pgd
9090+*.rsp
9191+*.sbr
9292+*.tlb
9393+*.tli
9494+*.tlh
9595+*.tmp
9696+*.tmp_proj
9797+*_wpftmp.csproj
9898+*.log
9999+*.tlog
100100+*.vspscc
101101+*.vssscc
102102+.builds
103103+*.pidb
104104+*.svclog
105105+*.scc
106106+107107+# Chutzpah Test files
108108+_Chutzpah*
109109+110110+# Visual C++ cache files
111111+ipch/
112112+*.aps
113113+*.ncb
114114+*.opendb
115115+*.opensdf
116116+*.sdf
117117+*.cachefile
118118+*.VC.db
119119+*.VC.VC.opendb
120120+121121+# Visual Studio profiler
122122+*.psess
123123+*.vsp
124124+*.vspx
125125+*.sap
126126+127127+# Visual Studio Trace Files
128128+*.e2e
129129+130130+# TFS 2012 Local Workspace
131131+$tf/
132132+133133+# Guidance Automation Toolkit
134134+*.gpState
135135+136136+# ReSharper is a .NET coding add-in
137137+_ReSharper*/
138138+*.[Rr]e[Ss]harper
139139+*.DotSettings.user
140140+141141+# TeamCity is a build add-in
142142+_TeamCity*
143143+144144+# DotCover is a Code Coverage Tool
145145+*.dotCover
146146+147147+# AxoCover is a Code Coverage Tool
148148+.axoCover/*
149149+!.axoCover/settings.json
150150+151151+# Coverlet is a free, cross platform Code Coverage Tool
152152+coverage*.json
153153+coverage*.xml
154154+coverage*.info
155155+156156+# Visual Studio code coverage results
157157+*.coverage
158158+*.coveragexml
159159+160160+# NCrunch
161161+_NCrunch_*
162162+.*crunch*.local.xml
163163+nCrunchTemp_*
164164+165165+# MightyMoose
166166+*.mm.*
167167+AutoTest.Net/
168168+169169+# Web workbench (sass)
170170+.sass-cache/
171171+172172+# Installshield output folder
173173+[Ee]xpress/
174174+175175+# DocProject is a documentation generator add-in
176176+DocProject/buildhelp/
177177+DocProject/Help/*.HxT
178178+DocProject/Help/*.HxC
179179+DocProject/Help/*.hhc
180180+DocProject/Help/*.hhk
181181+DocProject/Help/*.hhp
182182+DocProject/Help/Html2
183183+DocProject/Help/html
184184+185185+# Click-Once directory
186186+publish/
187187+188188+# Publish Web Output
189189+*.[Pp]ublish.xml
190190+*.azurePubxml
191191+# Note: Comment the next line if you want to checkin your web deploy settings,
192192+# but database connection strings (with potential passwords) will be unencrypted
193193+*.pubxml
194194+*.publishproj
195195+196196+# Microsoft Azure Web App publish settings. Comment the next line if you want to
197197+# checkin your Azure Web App publish settings, but sensitive information contained
198198+# in these scripts will be unencrypted
199199+PublishScripts/
200200+201201+# NuGet Packages
202202+*.nupkg
203203+# NuGet Symbol Packages
204204+*.snupkg
205205+# The packages folder can be ignored because of Package Restore
206206+**/[Pp]ackages/*
207207+# except build/, which is used as an MSBuild target.
208208+!**/[Pp]ackages/build/
209209+# Uncomment if necessary however generally it will be regenerated when needed
210210+#!**/[Pp]ackages/repositories.config
211211+# NuGet v3's project.json files produces more ignorable files
212212+*.nuget.props
213213+*.nuget.targets
214214+215215+# Microsoft Azure Build Output
216216+csx/
217217+*.build.csdef
218218+219219+# Microsoft Azure Emulator
220220+ecf/
221221+rcf/
222222+223223+# Windows Store app package directories and files
224224+AppPackages/
225225+BundleArtifacts/
226226+Package.StoreAssociation.xml
227227+_pkginfo.txt
228228+*.appx
229229+*.appxbundle
230230+*.appxupload
231231+232232+# Visual Studio cache files
233233+# files ending in .cache can be ignored
234234+*.[Cc]ache
235235+# but keep track of directories ending in .cache
236236+!?*.[Cc]ache/
237237+238238+# Others
239239+ClientBin/
240240+~$*
241241+*~
242242+*.dbmdl
243243+*.dbproj.schemaview
244244+*.jfm
245245+*.pfx
246246+*.publishsettings
247247+orleans.codegen.cs
248248+249249+# Including strong name files can present a security risk
250250+# (https://github.com/github/gitignore/pull/2483#issue-259490424)
251251+#*.snk
252252+253253+# Since there are multiple workflows, uncomment next line to ignore bower_components
254254+# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
255255+#bower_components/
256256+257257+# RIA/Silverlight projects
258258+Generated_Code/
259259+260260+# Backup & report files from converting an old project file
261261+# to a newer Visual Studio version. Backup files are not needed,
262262+# because we have git ;-)
263263+_UpgradeReport_Files/
264264+Backup*/
265265+UpgradeLog*.XML
266266+UpgradeLog*.htm
267267+ServiceFabricBackup/
268268+*.rptproj.bak
269269+270270+# SQL Server files
271271+*.mdf
272272+*.ldf
273273+*.ndf
274274+275275+# Business Intelligence projects
276276+*.rdl.data
277277+*.bim.layout
278278+*.bim_*.settings
279279+*.rptproj.rsuser
280280+*- [Bb]ackup.rdl
281281+*- [Bb]ackup ([0-9]).rdl
282282+*- [Bb]ackup ([0-9][0-9]).rdl
283283+284284+# Microsoft Fakes
285285+FakesAssemblies/
286286+287287+# GhostDoc plugin setting file
288288+*.GhostDoc.xml
289289+290290+# Node.js Tools for Visual Studio
291291+.ntvs_analysis.dat
292292+node_modules/
293293+294294+# Visual Studio 6 build log
295295+*.plg
296296+297297+# Visual Studio 6 workspace options file
298298+*.opt
299299+300300+# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
301301+*.vbw
302302+303303+# Visual Studio 6 auto-generated project file (contains which files were open etc.)
304304+*.vbp
305305+306306+# Visual Studio 6 workspace and project file (working project files containing files to include in project)
307307+*.dsw
308308+*.dsp
309309+310310+# Visual Studio 6 technical files
311311+*.ncb
312312+*.aps
313313+314314+# Visual Studio LightSwitch build output
315315+**/*.HTMLClient/GeneratedArtifacts
316316+**/*.DesktopClient/GeneratedArtifacts
317317+**/*.DesktopClient/ModelManifest.xml
318318+**/*.Server/GeneratedArtifacts
319319+**/*.Server/ModelManifest.xml
320320+_Pvt_Extensions
321321+322322+# Paket dependency manager
323323+.paket/paket.exe
324324+paket-files/
325325+326326+# FAKE - F# Make
327327+.fake/
328328+329329+# CodeRush personal settings
330330+.cr/personal
331331+332332+# Python Tools for Visual Studio (PTVS)
333333+__pycache__/
334334+*.pyc
335335+336336+# Cake - Uncomment if you are using it
337337+# tools/**
338338+# !tools/packages.config
339339+340340+# Tabs Studio
341341+*.tss
342342+343343+# Telerik's JustMock configuration file
344344+*.jmconfig
345345+346346+# BizTalk build output
347347+*.btp.cs
348348+*.btm.cs
349349+*.odx.cs
350350+*.xsd.cs
351351+352352+# OpenCover UI analysis results
353353+OpenCover/
354354+355355+# Azure Stream Analytics local run output
356356+ASALocalRun/
357357+358358+# MSBuild Binary and Structured Log
359359+*.binlog
360360+361361+# NVidia Nsight GPU debugger configuration file
362362+*.nvuser
363363+364364+# MFractors (Xamarin productivity tool) working folder
365365+.mfractor/
366366+367367+# Local History for Visual Studio
368368+.localhistory/
369369+370370+# Visual Studio History (VSHistory) files
371371+.vshistory/
372372+373373+# BeatPulse healthcheck temp database
374374+healthchecksdb
375375+376376+# Backup folder for Package Reference Convert tool in Visual Studio 2017
377377+MigrationBackup/
378378+379379+# Ionide (cross platform F# VS Code tools) working folder
380380+.ionide/
381381+382382+# Fody - auto-generated XML schema
383383+FodyWeavers.xsd
384384+385385+# VS Code files for those working on multiple tools
386386+.vscode/*
387387+!.vscode/settings.json
388388+!.vscode/tasks.json
389389+!.vscode/launch.json
390390+!.vscode/extensions.json
391391+*.code-workspace
392392+393393+# Local History for Visual Studio Code
394394+.history/
395395+396396+# Windows Installer files from build outputs
397397+*.cab
398398+*.msi
399399+*.msix
400400+*.msm
401401+*.msp
402402+403403+# JetBrains Rider
404404+*.sln.iml
405405+.idea/
406406+407407+##
408408+## Visual studio for Mac
409409+##
410410+411411+412412+# globs
413413+Makefile.in
414414+*.userprefs
415415+*.usertasks
416416+config.make
417417+config.status
418418+aclocal.m4
419419+install-sh
420420+autom4te.cache/
421421+*.tar.gz
422422+tarballs/
423423+test-results/
424424+425425+# Mac bundle stuff
426426+*.dmg
427427+*.app
428428+429429+# content below from: https://github.com/github/gitignore/blob/main/Global/macOS.gitignore
430430+# General
431431+.DS_Store
432432+.AppleDouble
433433+.LSOverride
434434+435435+# Icon must end with two \r
436436+Icon
437437+438438+439439+# Thumbnails
440440+._*
441441+442442+# Files that might appear in the root of a volume
443443+.DocumentRevisions-V100
444444+.fseventsd
445445+.Spotlight-V100
446446+.TemporaryItems
447447+.Trashes
448448+.VolumeIcon.icns
449449+.com.apple.timemachine.donotpresent
450450+451451+# Directories potentially created on remote AFP share
452452+.AppleDB
453453+.AppleDesktop
454454+Network Trash Folder
455455+Temporary Items
456456+.apdisk
457457+458458+# content below from: https://github.com/github/gitignore/blob/main/Global/Windows.gitignore
459459+# Windows thumbnail cache files
460460+Thumbs.db
461461+ehthumbs.db
462462+ehthumbs_vista.db
463463+464464+# Dump file
465465+*.stackdump
466466+467467+# Folder config file
468468+[Dd]esktop.ini
469469+470470+# Recycle Bin used on file shares
471471+$RECYCLE.BIN/
472472+473473+# Windows Installer files
474474+*.cab
475475+*.msi
476476+*.msix
477477+*.msm
478478+*.msp
479479+480480+# Windows shortcuts
481481+*.lnk
482482+483483+# Vim temporary swap files
484484+*.swp
···11+# See https://aka.ms/customizecontainer to learn how to customize your debug container and how Visual Studio uses this Dockerfile to build your images for faster debugging.
22+33+# This stage is used when running from VS in fast mode (Default for Debug configuration)
44+FROM mcr.microsoft.com/dotnet/runtime:9.0 AS base
55+USER $APP_UID
66+WORKDIR /app
77+88+99+# This stage is used to build the service project
1010+FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build
1111+ARG BUILD_CONFIGURATION=Release
1212+WORKDIR /src
1313+COPY ["Directory.Packages.props", "."]
1414+COPY ["AltBot.Worker/AltBot.Worker.csproj", "AltBot.Worker/"]
1515+RUN dotnet restore "./AltBot.Worker/AltBot.Worker.csproj"
1616+COPY . .
1717+WORKDIR "/src/AltBot.Worker"
1818+RUN dotnet build "./AltBot.Worker.csproj" -c $BUILD_CONFIGURATION -o /app/build
1919+2020+# This stage is used to publish the service project to be copied to the final stage
2121+FROM build AS publish
2222+ARG BUILD_CONFIGURATION=Release
2323+RUN dotnet publish "./AltBot.Worker.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false
2424+2525+# This stage is used in production or when running from VS in regular mode (Default when not using the Debug configuration)
2626+FROM base AS final
2727+WORKDIR /app
2828+COPY --from=publish /app/publish .
2929+ENTRYPOINT ["dotnet", "AltBot.Worker.dll"]