August 2022 Summaries
9 posts from CircleCI
Filter
Month:
Year:
Post Summaries
Back to Blog
The tutorial provides a comprehensive guide on building a custom ASP.NET Core container using Docker and deploying it on Microsoft Azure through Azure Container Registry (ACR). It covers the entire process from setting up the Azure Container Registry to host the container image, creating and running the container locally, and finally publishing the Docker image to ACR. The tutorial also explains how to create an Azure web app linked to the container image and enable continuous deployment to ensure that any updates to the container image are automatically reflected in the application. Additionally, it includes automation of the deployment process using CircleCI, with detailed instructions on setting up the CircleCI configuration, linking the GitHub repository, and managing environment variables for seamless integration. The tutorial aims to equip users with the skills to manage containerized applications efficiently on Azure, ensuring that applications remain updated with minimal manual intervention.
Aug 24, 2022
1,699 words in the original blog post.
Smartphones have become integral to communication and entertainment, leading developers to create a wide range of apps tailored for either Android or iOS operating systems. This development can be approached in two ways: native, which focuses on a specific operating system, and cross-platform, which targets multiple systems from a single codebase. Native apps often deliver superior performance, security, and user experience as they are optimized for specific platforms using languages like Java, Kotlin, Objective-C, or Swift. However, they can be costly and time-consuming due to the need for separate development teams. Cross-platform apps, using frameworks like React Native, Flutter, and .NET MAUI, offer cost-effectiveness and quicker development by allowing code reuse across platforms but may suffer from lower performance and delayed access to new platform features. The decision between native and cross-platform development should consider factors such as audience, budget, timeline, performance, and security needs. While cross-platform apps are ideal for rapid market entry, native apps are preferable for applications requiring high security and performance. Ultimately, the choice depends on the specific requirements and future plans of the mobile app project.
Aug 24, 2022
1,804 words in the original blog post.
Developers are rapidly building features using a wide array of software tools, but a critical aspect of this process is the secure handling of "secrets," or digital authentication credentials, particularly in Continuous Integration/Continuous Deployment (CI/CD) environments. These secrets, such as API keys and tokens, can be inadvertently exposed due to human error, often through hardcoding in source code or neglecting proper version control practices. Unlike other vulnerabilities, detecting secrets requires scanning the entire codebase history, as they can remain hidden in commit histories even after deletion. GitGuardian offers a solution by providing real-time monitoring and secrets detection tools integrated into CI/CD workflows, such as CircleCI, to prevent and address these vulnerabilities efficiently. The tutorial emphasizes the importance of integrating secrets detection early in the developer workflow to avoid the complications of rotating leaked secrets, which can disrupt workflows and cause system failures. GitGuardian's tools enable comprehensive scanning and collaboration among teams to remediate detected secrets, fostering a culture of shared responsibility for code security.
Aug 23, 2022
1,770 words in the original blog post.
The CircleCI visual config editor (VCE) is now available as an open-source project, providing development teams with a low-code, drag-and-drop tool to create and modify CircleCI config files. This node-graph editor offers an intuitive way to build CI/CD pipelines, complementing rather than replacing YAML, and is particularly beneficial for newcomers to CircleCI who can generate configurations without needing to learn the intricacies of YAML. The VCE allows users to access CircleCI orbs easily, manage tag and branch filters, and validate inputs in real-time, thus streamlining the config building process. Experienced users can benefit from quick changes, workflow previews, and enhanced project understanding. The VCE environment includes three main panes—visualizer, inspector, and output—to facilitate configuration, while the platform supports integration with services like Heroku through orbs. The open-source nature of the VCE allows for community contributions, and it is part of a broader ecosystem that includes the CircleCI config SDK for advanced config-as-code solutions using JavaScript or TypeScript.
Aug 17, 2022
1,648 words in the original blog post.
The tutorial details the process of deploying a REST API using AWS Cloud Development Kit (CDK) with AWS Lambda-based authorizers, emphasizing the advantages of using AWS CDK as an infrastructure-as-code (IaC) tool. It guides users through setting up necessary tools and accounts, including NodeJS, AWS CLI, AWS CDK CLI, and CircleCI, and demonstrates how to create a new AWS CDK project in TypeScript. The article explains how to define AWS Lambda functions for business logic and authorization, integrate them with API Gateway, and customize API behavior with usage plans and rate limits. It also covers creating CDK constructs for AWS services like S3, DynamoDB, and API Gateway, and concludes by walking through automating the deployment process using CircleCI, including setting up environment variables and triggering pipelines. The tutorial aims to show the seamless integration of AWS services using familiar programming languages, enabling efficient development and deployment of cloud-based applications.
Aug 16, 2022
3,683 words in the original blog post.
The text discusses the benefits and process of automating testing for FeathersJS applications using CircleCI in the software development lifecycle. It highlights how testing ensures that an application functions as expected, providing stakeholders with confidence to make code adjustments, and preventing user-facing issues by identifying problems before deployment. The article offers a detailed guide on setting up a FeathersJS application, configuring authentication, and establishing a continuous integration/continuous deployment (CI/CD) pipeline with CircleCI to automate tests, using Mocha as the testing framework. It emphasizes the importance of automated testing in eliminating human errors and improving the quality control of software by ensuring that tests are passed before updates are deployed. Additionally, the text provides instructions for adding security features to the application, such as preventing unauthorized account changes, and demonstrates how to manage the entire process using GitHub for version control.
Aug 15, 2022
2,538 words in the original blog post.
Testing is a crucial component of mobile app development, ensuring quality, security, and reliability before release. Developers have the option of conducting self-hosted or cloud-based mobile testing, each with distinct advantages. Self-hosted testing provides control over configurations and data security, making it suitable for industries requiring stringent compliance, like healthcare. However, it demands significant resources and maintenance. Conversely, cloud-based testing offers scalability, flexibility, and cost-effectiveness, utilizing third-party infrastructure for rapid test execution through virtualization and parallelization, which accelerates the development cycle by enabling multiple configurations to be tested concurrently. While self-hosted testing might be necessary for specific use cases, cloud-based testing is generally more efficient for most mobile app testing needs. CircleCI supports cloud-based testing, offering tools to streamline mobile app development within a continuous integration and delivery framework.
Aug 14, 2022
1,450 words in the original blog post.
The text provides a comprehensive tutorial on using the AWS Cloud Development Kit (CDK) to deploy a cloud-based application that involves an AWS Lambda function interacting with AWS S3 and AWS DynamoDB. By promoting the use of infrastructure-as-code solutions like AWS CDK, the tutorial emphasizes the benefits of programmatically managing cloud resources, which helps avoid manual deployment errors and bottlenecks. It guides users through the setup process, detailing prerequisites such as NodeJS, AWS CLI, and AWS CDK CLI installation, and instructs on creating a new CDK project in Typescript. The tutorial includes steps for defining an AWS Lambda function, writing a CSV file to AWS S3, and updating a DynamoDB table, and it further explains how to define CDK constructs for these services. Additionally, it covers deploying the application manually and automating the deployment using CircleCI, highlighting the integration of Git workflows and CI/CD pipelines. Finally, the text concludes by showcasing the ease of using familiar programming languages with AWS CDK to manage infrastructure code, making it accessible for testing and logical structuring.
Aug 08, 2022
3,089 words in the original blog post.
The text provides a comprehensive overview of code signing, emphasizing its importance in securing the software supply chain against cyber threats. Code signing involves applying digital signatures to software components to verify their authenticity and integrity, ensuring that applications are not tampered with by unauthorized parties. The article details the code signing process, which includes creating a public-private key pair, hashing, and verification, to maintain the security and authenticity of software. It also highlights the role of code signing in major platforms like Apple's App Store and Google Play Store, where it is mandatory for application distribution. Best practices for code signing, such as securing private keys, using automation with CI/CD pipelines, employing timestamps, and scanning for vulnerabilities, are discussed to enhance software security. The text concludes by stressing the significance of code signing in protecting against vulnerabilities and unauthorized changes, advocating for integrating these practices into the software development lifecycle to ensure robust application security.
Aug 03, 2022
1,651 words in the original blog post.