Open Epicor Function Library in VSCode

Not sure if this will be something that anyone else wants to use but thought I would share it as it might be useful to someone.

I like working in a dedicated code editor outside of Epicor so in the past I had built a custom solution that lets me just spin up a docker container on demand that links to function libraries in epicor and keeps the code synced between the editor and function library automatically. That specific solution is too much to write up in a post but recently I put together a more “user friendly” version of it that allows you to run a GitHub action and have it pull the code and dlls for a function library into a repo within Github and spin up a codespace with all the references for you and then return a URL to either just open it in your browser or in vscode.

Link to repo: GitHub - AlwaysFocus/epicor-to-codespace

After following the README and setting things up, you can navigate to your repo and do the following:

  1. Go to the actions tab

  2. Select the Epicor to Codespace Setup workflow on the left

  1. Click on the run workflow dropdown and put in your target repo (to clone the function library to and setup the codespace in) and click “Run Workflow”

  2. The workflow will run (will take a couple minutes to spin up the container) and when it is finished you will see a url returned for the repo and the codespace:

When you open the codespace it will finish setting up the c# extensions and then you should have full intellisense as you would expect:

Feel free to try it out if this is something that interests you. Please note that you probably should not use this in cloud environments :slight_smile: so to cover myself I will say I do not condone the use of this in cloud environments (mainly due to the methods used to pull server assemblies and files since we are not natively given that ability in cloud). If you run into any issues or have any questions feel free to post replies here. I do not go on here very often so no promises on prompt responses.

8 Likes

:fire:
Thanks for sharing

Thanks @AlwaysFocus

1 Like