Tools
Git
Git is a fundamental part of our system. While you might be tempted to treat it as “just” a source control tool, your life will be much easier if you take the time to become familiar with everything it can do for you. It is most important to grok two fundamental aspects of Git that differ greatly from other CSV systems: one, the history is immutable, and two, branches do not cost anything to create.
Git has countless options, so to avoid feeling overwhelmed, I strongly suggest following one of the linked guides to start with, then branching out or asking someone when you need to do a specific task.
Further Reading
- Try Git learn Git with a simple simulated terminal enrvironment.
- Git: the simple guide covers most of Git.
- Atlassian Git tutorials wide-ranging tutorials from Atlassian.
Gitlab
GitLab is a web-based DevOps lifecycle tool that provides a Git-repository manager providing wiki, issue-tracking and CI/CD pipeline features, using an open-source license. Our instance are hosted by us and can be found at http://gitlab.it.si.
Slack
ITSI uses Slack as messaging for teams, bringing all your communication together in one simple place and integrating with the tools you already use. What’s different about Slack is that team conversations are organized into channels. Our instance can be found at https://itschools.slack.com.
Postman
Postman is ITSI’s favourite tool for testing our APIs.
Step 1: Install Postman
Get Postman from the official site
Step 2: Download our custom Postman Collection
Step 3: Import the collection into Postman
Use the import button pictured here to load the file you downloaded in Step 2. You will see a new collection on the “Collections” tab.
Step 4: Log in
Go to the collection, click on the Login request, fill in the server you want with the appropriate username and password and click “Send” to log in.
Eventcop
A tool to validate event streams generated by miEbooks and sent to analytics. For more information see https://gitlab.it.si/analytics/eventcop
Api integration tests
The goal of the integration tests is to test the data sent from the Educator Console to miEbooks.
The testing happens on each commit and occurs on offline.staging.it.si
.
The tests test the following: 1. That data is valid (using JSON Schemas) 2. That data is actually returned 3. That correct data is returned based on different scenarios
If tests fail, a Slack is sent to the #testing-miebooks channel with details on why it failed. Additionally the latest results are made in human readable format and displayed at https://pef.pages.it.si/api-integration-tests/tests/
For more information see https://gitlab.it.si/pef/api-integration-tests.
Bash on Windows
Since most of our systems are Unix based, we suggest Bash on Windows if you have a Windows machine. Bash on Windows provides a Windows subsystem and Ubuntu Linux runs atop it. It is not a VM, but rather a complete Linux system inside Windows 10.