Home / Companies / GitLab / Blog / November 2017

November 2017 Summaries

11 posts from GitLab

Filter
Month: Year:
Post Summaries Back to Blog
Containers are a method of operating system-based virtualization that allow applications and their dependencies to run independently, offering efficiency and resource savings over traditional virtual machines. Kubernetes, an open-source platform, automates the management of these containers, enabling dynamic scaling and resource allocation depending on demand, which enhances flexibility and reduces hardware usage. This approach is foundational to cloud native development, where applications are specifically designed for cloud environments and consist of loosely coupled services that maximize the benefits of cloud computing. Cloud native applications are portable across different cloud platforms, allowing for easier migration and distribution, which frees up developers to focus on innovation rather than infrastructure management. This evolution represents a significant step in digital transformation, moving the focus from machines to services, and enabling businesses to align with their strategic goals efficiently.
Nov 30, 2017 486 words in the original blog post.
At Pantomath, the development team utilizes GitLab to streamline their coding processes by automating tasks related to development projects, allowing them to focus more on coding itself. They employ a range of tools within the Go programming environment, such as linters, unit tests, data race checks, memory sanitizers, code coverage analysis, and build commands, all integrated into a consistent workflow through a Makefile. Continuous integration is facilitated using GitLab CI pipelines, which are configured via a .gitlab-ci.yml file to automate testing and building stages, with custom Docker images used to meet specific tool requirements like golint and Clang. The setup includes generating reports on code coverage and providing visual badges in the project's README to display the build status, test coverage, and other metrics. The document emphasizes the importance of maintaining code quality through automated checks and highlights the potential for expanding these processes into continuous deployment and documentation practices.
Nov 27, 2017 2,406 words in the original blog post.
Substrakt Health demonstrates how to set up an autoscaling cluster of GitLab CI/CD runners using Docker Machine and AWS, enabling significant cost reductions by leveraging EC2 Spot Instances. The tutorial emphasizes the importance of code quality and testing, explaining how GitLab CI/CD facilitates the distribution of tasks across multiple servers and allows for capacity scaling to optimize expenses. By configuring GitLab runners to automatically adjust the number of instances based on demand, users can save up to 90% on costs. The setup includes creating a spawner machine to manage capacity, installing necessary software such as gitlab-runner and Docker Machine, and configuring these tools to work in autoscaling mode. The guide highlights the cost-effectiveness of Spot Instances, which offer substantial discounts on EC2 usage but come with the risk of abrupt shutdowns if bid prices are exceeded. Overall, this approach allows for efficient resource management and financial savings while maintaining high software testing standards.
Nov 23, 2017 1,543 words in the original blog post.
Implementing continuous integration (CI) using GitLab CI can significantly enhance Android project workflows by automating tasks and reducing manual build processes. At Undabot, a YAML file is used to define various CI jobs, such as building, testing, quality assurance, and deployment, each with specific scripts that automate tasks like creating APKs, running unit and instrumentation tests, conducting static code analysis, and deploying apps. Essential commands are incorporated to set up environments, execute Gradle tasks, and manage outputs, while manual deployment is facilitated through GitLab's web interface. This setup allows developers to focus on feature development by automating repetitive tasks and ensuring a consistent and reliable integration process, encouraging exploration of GitLab CI's advanced features.
Nov 20, 2017 1,298 words in the original blog post.
GitLab is organizing a quarterly "issue bash" event from December 16th to 17th, inviting community members to help resolve issues in the GitLab Community Edition issue tracker, with over 1,800 contributors already participating and opportunities for more to join. The event is open to everyone, including non-technical participants, and aims to encourage broad involvement in the project. Participants can win prizes such as T-shirts, pajama pants, notebooks, PocketCHIPs, and a messenger bag filled with all the items. Contributions made during the event will be entered into a random draw for prizes, and winners will be contacted afterward. Key GitLab team members will be available to assist and address any questions during the event.
Nov 20, 2017 339 words in the original blog post.
Aiming to enhance the work lives of developers globally, this survey seeks to understand the needs and preferences of modern developers, covering aspects such as developer satisfaction, open source technology use, and workflow preferences. Conducted by an open core company, the survey is designed to bridge the gap between developers and management by highlighting what successful organizations do differently. It takes around 15 minutes to complete, with questions about CI/CD practices and developer tools, and is open to anyone in the software development lifecycle. Participants can win GitLab robes and a Nintendo Switch, with emails used solely for prize draws to ensure privacy. The survey, tested by the GitLab engineering team for quality, promises to yield a valuable report for the developer community, with results shared openly to empower collaboration and improvement in developer environments.
Nov 17, 2017 387 words in the original blog post.
HumanGeo, a software development company specializing in geospatial visualization, transitioned from using Jenkins CI to GitLab to manage their DevOps processes more efficiently. This shift allowed them to significantly reduce administrative time and costs associated with managing their continuous integration pipeline, cutting admin time by 96% and infrastructure costs by 33%. Utilizing GitLab's user-friendly YAML configuration for CI and the ability to run spot instances contributed to these savings. Additionally, the adoption of GitLab has accelerated their pace of innovation with frequent feature updates and simplified upgrade processes, fostering an environment where development velocity and code quality are prioritized.
Nov 14, 2017 674 words in the original blog post.
Over the past year, the team has extensively utilized Vue.js, finding it to be a reliable and efficient tool, akin to a "workhorse" rather than a mere buzzword, particularly when used properly alongside VueX for larger features. The development journey has led to the creation and continuous refinement of a comprehensive Vue style guide, which emphasizes writing high-quality, maintainable code and adhering to best practices such as avoiding jQuery for DOM querying in favor of server-side solutions. The integration of Vue has significantly improved the performance of GitLab's issue comments, transitioning from a jQuery and Rails-based implementation to a more streamlined, componentized structure that enhances page load speeds and reduces jank. Although refactoring can be costly and risky, the ultimate goals are to enhance code maintainability and developer satisfaction, which in turn fosters a more productive and enthusiastic development environment. Future plans include further refactoring to address the performance of merge request comments, aiming to alleviate the current issues with responsiveness and code maintainability.
Nov 09, 2017 2,131 words in the original blog post.
Collaboration with Tasktop emphasizes the importance of aligning processes with goals in software development, highlighting several key principles to ensure efficiency and clarity. It advocates establishing clear objectives before defining processes, ensuring that goals drive the method rather than the other way around, and stresses the need for a single source of truth to keep all team members informed and aligned, particularly in distributed teams. Success metrics should be clear and measurable, allowing everyone to understand expectations and track progress using tools like issue trackers, which can link to merge requests for real-time updates and feedback. Cross-functional communication is vital, with open information sharing across all stages and teams to minimize risks and incorporate diverse ideas, ultimately improving outcomes. Lastly, the text suggests iterative improvements to existing processes, favoring gradual changes over radical shifts to enhance acceptance and effectiveness over time.
Nov 08, 2017 669 words in the original blog post.
Git is valuable for development and text file management but can become cumbersome with repetitive tasks as projects grow, prompting automation through continuous integration (CI) systems. This discussion focuses on automating Git operations using GitLab and GitLab CI, specifically addressing issues like automatic rebasing and opening merge requests. The process involves extracting vendor software into a Git repository, applying local patches on a separate branch, and automating the rebase of this branch onto the master whenever new software versions arrive. Automation of these tasks is achieved using GitLab CI pipelines, which streamline the workflow by leveraging CI jobs and scripts defined in a .gitlab-ci.yml file. Additionally, the setup includes creating automatic merge requests to update versions of network element drivers (NEDs) in another repository, ensuring a consistent and reproducible build process. The author, Kristian Larsson, shares insights from his work as a network automation systems architect at Deutsche Telekom, emphasizing the convenience and efficiency gained through such automation practices.
Nov 02, 2017 2,687 words in the original blog post.
GitLab has decided to replace its Contributor License Agreement (CLA) with a Developer's Certificate of Origin (DCO) to encourage more contributions from the open-source community. This change, prompted by feedback from Debian developers, addresses the common criticism that CLAs are overly restrictive and deter potential contributors due to their legal complexity. By adopting the DCO, GitLab aims to provide contributors with greater flexibility and control over their contributions, aligning with the needs of large open-source projects that wish to maintain independence from vendors. The move has been welcomed by figures in the open-source community, including representatives from GNOME and Debian, who believe it will foster more contributions and protect the intellectual property rights of developers.
Nov 01, 2017 435 words in the original blog post.