Skip to content

Conversation

@davidwesst
Copy link
Collaborator

@davidwesst davidwesst commented Dec 22, 2021

Relates to #124

Task List

  • Install Dotnet, Azure Functions, and Node dependencies into environment
  • Get api to dotnet build
  • Get 2wr-app to npm build
  • Install and Setup dotnet 5.0 SDK
  • Playwright Tests cannot open chormium browser (i.e. tests fail)
  • dotnet restore needs to be run mutliple times to success (possible network issue with Nuget)
  • Include and run CosmosDB emulator
  • Need the gh-cli tool installed too

Development Notes

  • Tested on Windows 10 with Docker for Windows, Codespaces, and Pop_OS 21.01 with Docker
  • Using Node 16.13.1 (LTS) which appears to be running fine, even though it uses Node 14 (LTS-1) in the build (this can be changed, if necessary)
  • Initial setup works as expected and runs build and tests of projects using scripts added in tools directory
  • CosmoDB in Docker emulator scripts work on Windows consistently, in Linux if run one at a time by user, and NOT in codespaces.
    • Still provides a pretty good experience for anyone using devcontainers on their local machine and works in Codespaces, but will likely need to setup an Azure-hosted development instance (as recommended in current documentation)
  • Removed the feature for GitHub CLI, as it's not really necessary and was behaving strangely.

@davidwesst
Copy link
Collaborator Author

@davidwesst
Copy link
Collaborator Author

@davidwesst
Copy link
Collaborator Author

Maybe update the dockerfile to just install the sdks on image build using apt.

https://docs.microsoft.com/en-us/dotnet/core/install/linux-ubuntu#2110-

@davidwesst davidwesst marked this pull request as ready for review December 22, 2021 22:19
@davidwesst
Copy link
Collaborator Author

@dpaquette -- When you have a moment, take a peek and we can schedule a code review or something. 😊

@dpaquette
Copy link
Collaborator

@davidwesst This looks great. Thanks for your contribution! I was able to spin up a codespace and get working on the app relatively easily.

We'll have to think through how that auth works when working in Codespaces. Let's schedule a time to walk through this together so we can capture the whole "new dev" experience and fill in any of the blanks that are needed. This will go a long way to improve our onboarding documentation.

@davidwesst
Copy link
Collaborator Author

Sounds good to me. Glad I could be of some help. 😊

@davidwesst
Copy link
Collaborator Author

davidwesst commented Jan 7, 2022

Post code review items that should be addressed:

  • Create local.settings.json file for the api project
  • Create a .env file for the 2wr-app project
  • Get the emulator working
  • Document a walkthrough of the development environment:
    • Build all applications
    • Run all application
    • Debug (i.e. hit breakpoint) in all applications

@davidwesst
Copy link
Collaborator Author

Tested against Linux (Pop_OS/Ubuntu), Windows 10, and Codespaces. Works consitently with Docker for Desktop on Linux, Windows. May still have minor issues with Codespaces, but may be related to size (i.e. CPU/RAM allocated Codespace).

Documentation not completed, but can follow-up with a document + video on how to use this (along with some further triage on Codespaces issue if that works).

@dpaquette dpaquette merged commit 5302a25 into HTBox:master Jan 24, 2022
dpaquette pushed a commit that referenced this pull request Nov 18, 2022
* added baseline C# functions devcontainer config. #124

* added some extensions and tool installs. #124

* added node, docker, and dotnet-install sdk scripts. #124

* added missing comma

* installing .net 5 and 6 sdks in dockerfile. #124

* added vnc desktop testing and first-build script to confirm environment is working immediately. #124

* added azurite to first-build script for setup

* finished adding scripts for cosmosdb emulator and database setup. #124

* minor fixes and removed github feature for now. #124

* adding config files on first build. #124

* fixed typo

* refreshed start-stop script and VSCode tasks for managing CosmosDB emulator

* added gh cli

* added task for vscode for cosmosdb

* added tasks and settings to run azure function vscode extension

* minor update to gitignore and linux compatible run command

* reverted npm script command back to windows style

* Added labels to tasks.json

* increased sleep time to give cosmosdb more time to startup
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants