https://www.azuredevopslabs.com/labs/vstsextend/sonarcloud/ 이 랩은 확인 및 정리할 내용이 다소 많아 2, 3편에 걸쳐 분리하여 포스팅 하고자 한다. 먼저 1편을 정리한다. 개요 SonarCloud는 클라우드 기반 코드 품질 및 보안 서비스이다. SonarCloud의 주요 기능은 다음과 같다. 23개의 개발언어 : Java, JS, C #, C / C ++, Objective-C, TypeScript, Python, ABAP, PLSQL, T-SQL 등 강력한 정적 코드 분석기 덕분에 찾기 어려운 버그와 품질 문제를 추적 할 수 있는 수천 가지 규칙이 있다. Travis, Azure DevOps, BitBucket, AppVeyor 등을 사용한 Cloud ..
실습 2 : 데이터베이스 및 애플리케이션 변경 이제 SQL 변경 자동화 프로젝트가 준비되었으므로 응용 프로그램의 일부 코드 변경과 함께 데이터베이스 스키마 및 데이터를 약간 변경해야한다. 랩 시나리오 PartsUnlimitedWebsite 프로젝트에서 web.config 파일을 편집한다. 연결 문자열을 변경하여 pul-dev 데이터베이스를 연결한다. 아래와 같이 연결 문자열을 업데이트한다. 애플리케이션을 로컬로 다시 실행한다. F5를 누르거나 디버깅 시작 아이콘을 클릭하여 애플리케이션을 로컬로 빌드하고 실행한다. 홈 페이지에서 확인하면 오일 및 필터 제품에 대한 할인을 받을 수 있다. 애플리케이션 코드 변경사항: 고객이 새 해 제안으로 모든 제품에 대한 할인을 원한다고 가정한다. 이를 위해서는 기존 애플..
https://www.azuredevopslabs.com/labs/vstsextend/redgate/ 이 랩은 확인 및 정리할 내용이 다소 많아 2편에 걸쳐 분리하여 포스팅 하고자 한다. 먼저 1편을 정리한다. 개요 데이터베이스 DevOps 완전히 개발되었다. DevOps의 성공적인 구현에 기여할 수있는 핵심 기술 관행으로 간주되어 데이터베이스 병목 현상을 제거하고 릴리스를 더 빠르고 쉽게 할 수 있다. 조직이 DevOps를 구현하지 못하게하는 일반적인 차단기는 데이터베이스이다. 고유한 요구 사항이 있으며 종종 애플리케이션 개발에 사용되는 것과 완전히 다른 개발 프로세스를 따른다. 여기에서 Redgate SQL Change Automation은 Redgate SQL Change Automation을 사용..
https://www.azuredevopslabs.com/labs/vstsextend/ansible/ 개요 Ansible은 클라우드 프로비저닝, 구성 관리 및 애플리케이션 배포를 자동화하는 오픈 소스 도구이다. Ansible을 사용하여 가상 머신, 컨테이너, 네트워크 및 완전한 클라우드 인프라를 프로비저닝 할 수 있다. 또한 Ansible을 사용하면 환경에서 리소스의 배포 및 구성을 자동화 할 수 있다. Ansible에는 원격 호스트 또는 플레이 북을 통해 직접 실행할 수 있는 Ansible 모듈 제품군이 포함되어 있다. 사용자는 자신의 모듈을 만들 수도 있다. 모듈은 서비스, 패키지 또는 파일과 같은 시스템 리소스를 제어하거나 시스템 명령을 실행하는 데 사용할 수 있다. Azure 서비스와 상호 작용하..
https://azuredevopslabs.com/labs/vstsextend/kubernetes/ 개요 Azure Kubernetes Service (AKS)는 Azure 상에서 쿠버네티스를 이용할 수 있는 가장 빠른 방법이다. AKS는 호스팅 된 Kubernetes 환경을 관리하므로 컨테이너 오케스트레이션 전문 지식 없이도 컨테이너화 된 애플리케이션을 빠르고 쉽게 배포하고 관리 할 수 있다. 또한 애플리케이션을 오프라인으로 전환하지 않고도 필요에 따라 리소스를 프로비저닝, 업그레이드 및 확장하여 지속적인 운영 및 유지 관리의 부담을 제거한다. Azure DevOps는 연속 빌드 옵션을 사용하여 더 빠른 배포와 안정성을 위해 Docker 이미지를 만드는 데 도움이된다. AKS를 사용하는 가장 큰 장..
https://azuredevopslabs.com/labs/vstsextend/selenium/ 개요 Selenium은 웹 애플리케이션을 위한 휴대용 오픈 소스 소프트웨어 테스트 프레임워크이다. 거의 모든 운영 체제에서 작동 할 수 있는 기능이 있다. 모든 최신 브라우저와 .NET (C #), Java를 포함한 여러 언어를 지원한다. 이 랩에서는 Azure DevOps 릴리즈 파이프 라인의 일부로 C# 웹 애플리케이션에서 selenium 테스트 사례를 실행하는 방법을 알아본다. 추가 학습을 원하면 Microsoft Learn의 Azure Pipelines 모듈에서 기능 테스트 실행을 확인한다. 시작하기 전에 1. 아래 실습을 수행하기 전에 시작하기를 참조한다. 2. 아래 Azure에 배포 버튼을 클릭하여..
https://azuredevopslabs.com/labs/vstsextend/aspnetmodernize/ 실습 3: ACR(Azure Container Registry)에도커 이미지 게시 이제 애플리케이션이 로컬 Docker에서 성공적으로 실행되고 있는지 확인 했으므로 Visual Studio의 게시 마법사를 사용하여 새 또는 기존 Azure Container Registry에 이미지를 게시 할 수 있다. 1. 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 Publish를 선택한다. 2. 게시 마법사에서 Target으로 Azure를 선택하고 Specific target으로 Azure Container Registry를 선택한 다음 Next를 클릭한다. + 버튼을 클릭한다. 3. 필요한 세부 정보를 입력하..
https://azuredevopslabs.com/labs/vstsextend/aspnetmodernize/ 이 랩은 진행과정에서의 설명을 일부 생략된 부분 때문에 그리고 랩 수행 환경 탓인지 에러가 많이 발생하여 미뤄왔던 것이었다. 이번에 다시 2편에 걸쳐 나눠서 재시도하여 정리를 하려 한다. 먼저 1편을 정리한다. 개요 웹 애플리케이션을 현대화하고 클라우드로 이동하기로 결정한 경우 반드시 앱을 완전히 재설계(re-architect)할 필요는 없다. 온 프레미스 아키텍처를 에뮬레이트하는 환경을 구축하고 애플리케이션을 "가져오기"는 하지만 그 이상을 달성하지는 못한다. 마이크로 서비스와 같은 고급 접근 방식을 사용하여 애플리케이션을 재구성하는 것은 비용과 시간 제약으로 인해 항상 선택 사항이 아니다. 앱..
https://azuredevopslabs.com/labs/vstsextend/eclipse/ 이 랩은 Eclipse와 Azure Repos 및 Azure Pipelines 통합하기 1, 2편에서 이어지는 추가편이다. 개요 이 실습에서는 Java 개발자의 일반적인 엔드투엔드 워크플로우를 볼 수 있다. Part 1 : Eclipse와 Azure Repos 및 Azure Pipelines 통합하기 1, 2편의 실습을 완료하여 팀 프로젝트를 만들고, Eclipse를 설정하고, ACR에 이미지를 게시하고 애플리케이션을 Azure Web App에 배포하도록 Azure Pipeline을 구성해야 한다. 이 시나리오에서는 실행중인 MyShuttle 애플리케이션을 열고 버그를 발견한다. 그런 다음 탐색 테스트 확장을 ..
https://azuredevopslabs.com/labs/vstsextend/eclipse/ 실습4: 컨테이너 용 Azure Web App에 배포하기 이 실습에서는 웹 애플리케이션을 Azure 웹앱에 배포하는 릴리즈 파이프 라인을 설정한다. 먼저 Web App을 만들어 보겠다. 1. Azure Portal에 로그인한다. 2. Azure Portal에서 + Create a resource를 선택하고 Web App for Containers + MYSQL을 검색한 다음 Create를 선택하고 클릭한다. (Web App for Containers + MYSQL는 존재하지 않는다. 따라서 webapp과 MySQL을 각각 따로 생성해야 한다. 컨테이너용 Azure Web App에 도커로 된 JAVA 앱 배포하기..