Comments (21)
In Friday triage meeting, with input from Chris L. decided that this is an issue that we should resolve now while we are in the process of creating a new pod image.
from devnet-express-dna-issues.
I believe proposed folder structure is ideal solution to our problem.
~/CiscoDevNet <-- Root directory
|--venv <-- Folder containing virtual environments for different tracks
|--dna
|--cloud-collab
|--dci
|--code <-- Folder containing code samples for different tracks
|--dna
|--devnet-express-code-samples
|--cloud-collab
|--dci
If there are no objections, I will go ahead and make changes in the DNA track
from devnet-express-dna-issues.
That structure looks good to me! The only modification or input that I would give would be to not add the devnet-express-code-samples
folder/repo underneath the dna
folder, but rather make-it the dna
folder by cloning the repo to the dna
folder name - like so:
git clone https://github.com/CiscoDevNet/devnet-express-code-samples.git dna
This shortens path names, and I feel it is a little cleaner / clearer.
from devnet-express-dna-issues.
@cmlccie @austinMarcos
Should this change be implemented before DevNetExpress event in Las Vegas or after?
Below items need to be updated
- Instructions in all labs
- Screenshots
- Slide decks
from devnet-express-dna-issues.
The DNA track isn't being offered at CLUS (just CC and DCI); however, it would be good to get this new 'standard' over to the other track creators to use in those tracks. It would be good to start off these tracks with the standardized folder structure - if possible.
from devnet-express-dna-issues.
This makes sense to me and I agree it's a confusing issue. Having a standard will be great. We will implement in the DCI track that is in development now.
from devnet-express-dna-issues.
Just to confirm, we are looking at the following:
Last login: Sat May 20 12:04:49 on ttys001
~ $ mkdir -p ~/CiscoDevNet/venv
~ $ mkdir -p ~/CiscoDevNet/code
~ $ cd ~/CiscoDevNet
CiscoDevNet $ virtualenv -p python3 venv/dna
<-- Output Omitted -->
CiscoDevNet $ git clone https://github.com/CiscoDevNet/devnet-express-code-samples.git code/dna
<-- Output Omitted -->
CiscoDevNet $ tree -d -L 3
.
├── code
│ └── dna
│ ├── LM-1201
│ ├── LM-4201
│ ├── LM-4302
│ ├── LM-4402
│ ├── LM-4502
│ ├── LM-4602
│ ├── LM-4702
│ ├── LM-4802
│ ├── LM-4901
│ └── NWPLab
└── venv
└── dna
├── bin
├── include
└── lib
17 directories
Which produces nice, intuitive and relatively short relative paths like:
~/CiscoDevNet/code/dna/LM-4201/
Correct?
from devnet-express-dna-issues.
@cmlccie one thing I've asked for the code samples on DCI is that after the "LM-XXXX" we include a short description of what the module is. Numbers are great to verify, but can be a pain if you don't intuitively know them. So what I've asked for would be something like this..
LM-5501 intro-aci
LM-5551 intermediate-aci
Any problems with that small deviation?
from devnet-express-dna-issues.
@hpreston , I completely understand... When looking at the LM-xxxx
folders, you don't really know which one is which (was also an issue with the Modulexx
naming / numbering scheme).
My input on the names you describe would be to:
- Keep the names as short as possible (so we don't get the crazy long path names that we have seen with the DNA track).
- Don't have spaces in the folder name; otherwise, people have issues working with with them - escaping the spaces or having to include quotes (sure you can just hit
tab
in most Unix/Linux shells, but not everyone knows this and it can cause some minor struggles for people who are just getting started).
So, something like:
LM-5501-intro-aci
LM-5551-intermediate-aci
Is probably ok. However, whatever we do, it would be good to standardize (and we just did change the folder names in the DNA track). 😬
Note that WWSE just contributed some funds to DevNet to help source an additional contracted Tech Writer. Maybe they can help us with all of these documentation revisions. 😎
from devnet-express-dna-issues.
@cmlccie good points... we'll work them into the updates.
from devnet-express-dna-issues.
+1 on Armen's proposed structure:
~/CiscoDevNet <-- Root directory
|--venv <-- Folder containing virtual environments for different tracks
|--dna
|--cloud-collab
|--dci
|--code <-- Folder containing code samples for different tracks
+1 on adding short descriptions to code samples folder names for the Data Center track.
+1 on 'Don't use spaces in the folder names'
@cmlccie I agree that although we are not presenting a DNE for DNA at CLUS 8-) , the week leading up to CLUS would be a good time to update the DNA pod's directory structure (and labs and slides). One advantage is that there are no DNExpress events happening during that week of June 19-23. I'll coordinate with @armartirosyan and @ecorban , who were already looking at updating the DNA pod (/issues/41). If not that week, then the week of July 3.
from devnet-express-dna-issues.
Based on conversation in DCI scrum today re path for virtual environment folder
~/CiscoDevNet <-- Root directory
|--venv <-- Folder containing virtual environments for different tracks
|--dna
|--cloud-collab
|--dci-py2
|--dci-py3
|--code <-- Folder containing code samples for different tracks
|--dna <--image on pod prepped with this as root of samples
|--cloud-collab
|--dci
from devnet-express-dna-issues.
Following past and recent observations from DNE events, we need to have a meeting to discuss at a higher level the end-to-end participant workflow. Tools used, recommended folder structures, and instructions provided all contribute to the participants journey and experience with engaging with these labs and learning track.
I have tagged the open issues related to the participants Development Environment, and I will schedule a call to discuss.
from devnet-express-dna-issues.
The folder structure in the code samples directory was modified, but the following lab needs to have the instructions and screenshots (of the command line) changed:
Also, verify that the changes appear in the DCI track:
from devnet-express-dna-issues.
I removed all inconsistent folder structures and replaced with agreed format. The changes have been pushed to issue19
branch and have been published to stage LLs https://learninglabs.cisco.com:8867/tracks/devnet-express-dna.
If approved, I will issue pull request and will merge it with master
branch.
Thanks
from devnet-express-dna-issues.
@austinMarcos Can this issue be closed?
from devnet-express-dna-issues.
I do believe they implemented the changes... Though the directory structure is less than optimal. Participants have to move in and out of their code folder (or use relative or absolute path references) to work with their virtual environments. As part of the primer and track re-working, I would recommend the following structure. From seeing the use at the events (and general Python best practices), the best structure for the participants is to co-locate the virtual environment directory within the project root.
This would simplify the setup instructions and subsequent UX in working in the track.
At a macro-level the folder structure could look like so:
~/CiscoDevNet <-- Root directory
|--tracks <-- Folder containing project/repository roots
|--cc <-- Friendly folder name for the cloned repository
|--.gitignore <-- Update .gitignore to exclude the venv folder from inclusion in the repo
|--requirements.txt <-- PIP requirements file to manage track dependencies
|--venv <-- The virutal environment for this track; created with python -m venv
|--dna
|--dci
from devnet-express-dna-issues.
This way we could simply instruct participants to work out of the project root, and provide instructions relative to their project folder.
Activate your virtual environment?
source venv/bin/activate
Run a script?
python LM-XXXX/myscript.py
etc.
from devnet-express-dna-issues.
Geez, yes, I hadn't realized it wasn't already this way. Agreed. We'll see what we can do in the next release set.
from devnet-express-dna-issues.
@cmlccie I'm not entirely sure how to make these changes. Are these changes in dCloud images?
Also, help me understand what type of user would have cc, dna, and dci folders? Are many people completing all three tracks, or is this for image re-use purposes?
from devnet-express-dna-issues.
This has been resolved in the DNAv3 work.
from devnet-express-dna-issues.
Related Issues (20)
- Python 2 is Sunset, its installation should be removed from the Content Guide HOT 5
- Using the CentOS workstation in dcloud/Devnet Express, pip install -r requirements.txt fails ! HOT 15
- Postman instructions are not clear HOT 2
- Step https://developer.cisco.com/learning/devnet-express/dnav4-track/dnav4-intro-dnac/dne-dnac-auth/step/2 has wrong import HOT 2
- Instructions not clear enough in https://developer.cisco.com/learning/devnet-express/dnav4-track/dnav4-intro-dnac/dne-dnac-path-trace/step/2 HOT 2
- Mission in dnav4 is hard to follow HOT 1
- dnac_config.py doesn't exist HOT 1
- Meraki Lab not well documented preventing attendees complete the lab HOT 1
- DNEv4 Confusing screenshots in DNA Modul HOT 3
- DNEv4 10.10.22.74 ipaddress is not available HOT 1
- DNEv4 confusing query param description in DNAC Modul HOT 1
- DNAv4 DNAC Mission Todo1 command_runner ios_cmd not clear
- verify.py errors out and doesnt complete. Needs better error handling to explain what problem is HOT 2
- Rebooting a crashed Pod HOT 2
- Login to Webex failed using cco account HOT 1
- intro-dnac/05_Template_Prg/dnac_utils.py uncomment line 38
- Missing Sydney-Deployment Template Projects on sandboxdnac2.cisco.com
- No Postman Collection/Environment for PathTrace
- No ASR part of sandboxdnac2.cisco.com
- Ubuntu Setup Guide for DNAv3 has incorrect command
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from devnet-express-dna-issues.