January 2020 Summaries
4 posts from Semaphore
Filter
Month:
Year:
Post Summaries
Back to Blog
The tutorial explains how to automate the process of deploying iOS apps to TestFlight using Semaphore as a CI/CD platform, streamlining tasks such as testing, building, and archiving apps. By integrating Continuous Integration and Continuous Deployment (CI/CD), developers can release updates efficiently without manual intervention. The guide details setting up a GitHub repository, linking it to Semaphore, and configuring pipelines with Fastlane to automate testing, building, and deployment processes. It emphasizes the use of Semaphore's features, including agents, blocks, and secrets, to manage environments and secure interactions with private repositories. The tutorial provides a comprehensive walkthrough of setting up Semaphore, running tests, building apps, and managing deployment tasks, allowing developers to focus on coding rather than manual app delivery.
Jan 13, 2020
3,260 words in the original blog post.
The article provides a comprehensive guide to setting up a continuous integration and delivery (CI/CD) pipeline using Semaphore and Google Kubernetes, with a focus on deploying a demo application. It begins with the necessary prerequisites, including signing up for Google Cloud Platform, GitHub, and Semaphore, and outlines the steps to fork a repository, create a Google Cloud project, and set up service accounts. The guide details the CI pipeline, which involves installing dependencies, running lint, unit, and end-to-end tests, and describes the deployment pipeline, highlighting the creation of a Docker image, Kubernetes cluster, and PostgreSQL database. It explains how to manage secrets and environment files securely and outlines the process of configuring and deploying the application to Google Kubernetes. The article concludes with testing the deployed application using RESTful API endpoints and offers suggestions for further exploration, such as creating a staging cluster and integrating additional Google Cloud services.
Jan 12, 2020
3,009 words in the original blog post.
In a comprehensive tutorial, the process of deploying serverless functions to Cloudflare using Semaphore is detailed, highlighting the benefits of serverless architecture which allows developers to focus on writing code without managing infrastructure. The tutorial guides users through the setup required, including installing necessary tools like Git, Node.js, and creating accounts with GitHub, Semaphore, and Cloudflare. It explains how to securely connect Semaphore with Cloudflare using API tokens, and how to employ Semaphore's CI/CD pipelines to test and deploy a simple serverless function called "hello," which responds to HTTP requests with "Hello World!" The tutorial also delves into the structure of Semaphore's Workflow Builder used for managing CI/CD processes and describes the deployment pipeline that utilizes the Serverless framework, originally developed for AWS Lambda, to streamline serverless application deployment. Finally, it encourages further exploration of serverless technology and provides additional resources for practice and learning.
Jan 07, 2020
1,711 words in the original blog post.
Docker image size is often perceived as important due to misconceptions about disk space and upload efficiency, but the primary concern should be the size of frequently changing layers, which impact both disk usage and upload times. Docker images consist of reusable layers, meaning that the overall image size doesn't directly correlate with disk space consumption, as shared layers among images mitigate this. Similarly, when uploading or downloading Docker images, only new or modified layers are transferred, reducing the impact of overall image size. In continuous integration and delivery (CI/CD) environments, using a solution with an integrated Docker registry, like Semaphore, can eliminate inefficiencies by caching image layers. To create manageable Docker images, the focus should be on designing Dockerfiles that minimize the size of frequently changing layers by organizing files based on how often they are modified. Although smaller Docker images are generally preferred for reducing the attack surface, their construction is more critical than their total size due to the amortization of initial upload/download hits over time.
Jan 06, 2020
998 words in the original blog post.