Home / Companies / CircleCI / Blog / July 2022

July 2022 Summaries

11 posts from CircleCI

Filter
Month: Year:
Post Summaries Back to Blog
Containers and microservices have transformed cloud application deployment, with Kubernetes emerging as the standard for container orchestration since its launch in 2014. This tutorial guides users through deploying a Node.js application on Azure Kubernetes Service (AKS) using a continuous integration and deployment (CI/CD) pipeline facilitated by CircleCI orbs. It emphasizes automating the deployment process, ensuring the latest application version runs on the Kubernetes cluster after each code push to GitHub. Prerequisites include accounts on Docker Hub, GitHub, Microsoft Azure, and CircleCI, alongside installations of Docker Engine, Kubectl, Azure CLI, and Node.js. The tutorial details steps from cloning the application to containerizing it using Docker, configuring Kubernetes manifests, creating an AKS cluster, and setting up a CI/CD pipeline with CircleCI. It highlights the importance of configuring environment variables and user keys within CircleCI for successful pipeline execution, ultimately allowing seamless application deployment and updates on the AKS cluster, accessible via the external IP address of the service.
Jul 28, 2022 2,522 words in the original blog post.
Increasing the speed of software development while maintaining code quality is challenging, but the adoption of software development practices in the data world offers solutions, such as using CircleCI and dbt to enhance data testing and deployment processes. CircleCI, in conjunction with dbt, allows for automatic testing and deployment of data changes to ensure quality data model releases, addressing bottlenecks caused by long test runs in dbt Cloud. By setting up CircleCI, users can run dbt tests in parallel against a production replica to ensure data integrity and improve development velocity. This setup involves creating a dbt profile, configuring custom schemas, and setting up a Python environment to prepare for dbt testing. The use of CircleCI also enables auto-canceling redundant workflows, which enhances testing speed and efficiency, particularly useful for larger data teams with frequent contributions and deployments. As data teams scale, implementing continuous integration pipelines for data model testing becomes crucial for iterating quickly and maintaining stakeholder trust in data integrity.
Jul 28, 2022 1,513 words in the original blog post.
CircleCI has announced its support for GitLab, enabling teams using GitLab SaaS or self-managed platforms to build, test, and deploy their projects using CircleCI's features, such as Docker layer caching and automatic test-splitting. This integration makes GitLab the third version control system CircleCI supports, alongside GitHub and Bitbucket, allowing GitLab users to connect their repositories with CircleCI accounts to automate pipelines with increased speed and resource options. The integration also introduces advanced controls for managing user permissions within CircleCI, ensuring security and compliance. This development aligns with the evolving software delivery landscape, where code repositories are no longer the sole focus of change, and prepares CircleCI to support future triggers from various sources outside traditional code repositories. GitLab and CircleCI aim to provide a modern, flexible solution for software development and delivery, enhancing confidence and control for development teams.
Jul 26, 2022 607 words in the original blog post.
The tutorial provides a comprehensive guide on setting up conditional pipelines in a CI/CD workflow using CircleCI. It explains the importance of continuous integration and deployment for improving software delivery by automatically building, testing, and deploying applications. The tutorial covers the execution of pipeline jobs based on specified conditions, demonstrating how to configure pipelines to run jobs only when certain criteria are met, such as successful lint checks. It introduces advanced concepts like manual approval and logic statements, allowing users to hold workflows or execute them based on branch conditions. Through practical examples, users learn how to enforce controls using CircleCI's features, ensuring that jobs only proceed when preceding steps are successful, thus preventing cascading failures and ensuring reliable software deployment.
Jul 24, 2022 2,185 words in the original blog post.
Self-hosted runners in CircleCI enable teams to customize and control their CI/CD infrastructure by hosting their own scalable execution environments in a private cloud or on-premises. These runners offer flexibility for teams with unique security or compute requirements and can be set up quickly, providing access to popular CircleCI Cloud features such as parallelism, test splitting, and SSH debugging. To manage fluctuations in resource demands and avoid unnecessary costs from idle resources, teams can implement an auto-scaling solution using AWS Auto Scaling groups, which adjusts the number of self-hosted runners based on job queue depth. This tutorial demonstrates setting up an auto-scaling solution for CircleCI's self-hosted runners with AWS, involving the creation of a launch template, Auto Scaling group, IAM policy, and role, along with the use of AWS Lambda functions to monitor job queue depth and adjust runners accordingly. By leveraging these tools, teams can maintain efficient and cost-effective CI/CD pipelines, adapting the infrastructure to meet dynamic workload requirements while maintaining full control over execution environments.
Jul 21, 2022 3,402 words in the original blog post.
Testing in the cloud is increasingly important for enhancing the effectiveness and efficiency of software development processes. By utilizing cloud-based continuous integration platforms, development teams can automatically test software integrity with every codebase change, ensuring rapid issue detection and improved collaboration. Cloud testing offers benefits over local testing, including access to extensive computing resources, real-time insights, and the ability to run parallel tests, thereby accelerating feedback and reducing hardware constraints. The article emphasizes the importance of tracking meaningful metrics like throughput, success rate, duration, and mean time to recovery (MTTR) to optimize development processes and improve decision-making. These insights, when shared across teams, allow for more agile responses to bugs and challenges. Platforms like CircleCI provide tools such as the Insights dashboard to visualize and quantify testing benefits, making it easier to capture actionable insights and enhance the development workflow.
Jul 18, 2022 1,862 words in the original blog post.
The article explores the challenges and solutions related to maintaining compliance with regulatory standards in software development, emphasizing the importance of automation through continuous integration and continuous delivery (CI/CD) practices. It highlights various compliance frameworks like HIPAA, PCI-DSS, SOC2, and FedRAMP, which organizations must adhere to across different industries to ensure data security and privacy. The text underscores best practices for achieving compliance, such as enforcing strict access controls, conducting comprehensive testing, and performing regular audits. It also discusses the significance of supply chain vulnerability scans and compliance audits to mitigate risks associated with interconnected software components. The integration of third-party security tools in CI/CD pipelines is recommended to streamline compliance processes, reduce overhead, and maintain robust security measures. CircleCI is presented as a solution that supports compliance best practices, offering features that enhance security, enable automation, and provide audit capabilities, thereby helping organizations in regulated industries efficiently meet compliance requirements while maintaining agility in their software delivery processes.
Jul 15, 2022 1,889 words in the original blog post.
Edge computing, a concept that originated with content delivery networks in the 1990s, has emerged as a significant player in distributed computing by reducing latency and enhancing performance through proximity-based processing. Unlike traditional cloud computing, which offers a wide array of services, edge computing focuses on minimizing latency by leveraging numerous, strategically-placed edge nodes to perform tasks close to the end-user's location. This approach is particularly beneficial for applications requiring high-speed performance, such as multiplayer gaming and location-based services like ridesharing. While edge computing shares similarities with cloud computing, it is distinguished by its infrastructure, which involves a greater number of points of presence equipped with advanced hardware. The integration of continuous integration and continuous deployment (CI/CD) tools further facilitates the management and deployment of edge services. Ultimately, edge computing acts as an extension of cloud computing, optimizing performance for latency-sensitive tasks and complementing the broader capabilities of cloud environments.
Jul 14, 2022 1,152 words in the original blog post.
CircleCI orbs are reusable YAML configuration packages designed to streamline the CI/CD process by reducing configuration complexity and enhancing efficiency. This tutorial explores the use of multiple orbs in CircleCI, illustrating their role in supporting multi-builds for various application types, such as a combined Flask API and Node.js command-line application. The text highlights how orbs can save time, simplify third-party integrations, and boost organizational efficiency by allowing developers to package, ship, and reuse configurations easily. By using multiple orbs, developers can create a more robust CI/CD pipeline, leading to faster project execution and excellent reusability. The tutorial also provides steps to set up multiple orbs and demonstrates the advantages of using orbs over standard configurations through comparative workflow run times.
Jul 11, 2022 1,014 words in the original blog post.
Configuration as Code (CaC) is a pivotal practice in modern software development that involves defining application, infrastructure, and pipeline settings in code, which are then stored in version control systems alongside application code. This approach enhances consistency, traceability, and automation, particularly benefiting teams implementing CI/CD pipelines by minimizing manual errors and strengthening security. CaC facilitates the automation of configuration management across all environments, from development to production, by programmatically applying changes through version control rather than manual edits. It distinguishes itself from Infrastructure as Code (IaC) by focusing on managing the settings of applications and infrastructure post-provisioning. Together with IaC, CaC is integral to GitOps, ensuring that configuration changes are automatically applied and tested within the pipeline, thereby improving reliability and efficiency. The adoption of CaC in DevOps environments not only reduces the risk of misconfigurations but also supports standardization, improves traceability, and enhances compliance, making it a critical component for automating CI/CD processes and optimizing development workflows.
Jul 06, 2022 1,369 words in the original blog post.
Self-hosted continuous integration (CI) tools, once the norm, have evolved to complement cloud-hosted solutions by offering unique benefits for specific use cases. While cloud-hosted CI provides flexibility and scalability, self-hosted CI infrastructure allows teams to maintain control over their computing environment, ensuring privacy and security, especially crucial in highly regulated industries like banking and healthcare. Self-hosted CI is advantageous for development scenarios requiring unique resource configurations or privileged access controls, such as testing on specific hardware or managing sensitive data securely. Teams can integrate self-hosted runners with cloud-based CI systems, such as CircleCI, to leverage the strengths of both environments. This hybrid approach allows for optimized resource management and cost savings, offering greater control over testing environments, which increases confidence in application performance and streamlines development processes. As the landscape of computing continues to grow and diversify, self-hosted CI remains a valuable option for addressing specific organizational needs.
Jul 05, 2022 1,595 words in the original blog post.