AWS CodeStar, Code Như Một Siêu Sao

Vào ngày 19/04, Amazon chính thức tung ra một công cụ mới AWS CodeStar, được thiết kế để giúp phát triển, xây dựng và triển khai các ứng dụng ngay trên AWS. Mục tiêu đơn giản hóa việc thiết lập life cycle của dự án: coding, building, testing, deploying, running. AWS CodeStar ra đời góp phần giải quyết các vấn đề mà development team đang đối diện hàng ngày: setup môi trường, quản lý team – tương tác giữa các thành viên (quản lý task, bug ticket…), quản lý source code (code commit, branch, merge…), deploy các bản build cho các môi trường (dev, test, production), theo dõi server resource…

Tuy đã cách 7 tháng từ lúc công cụ này được giới thiệu nhưng mình xin chia sẻ lại trong bài viết này.

Nội dung bài viết này sẽ giúp bạn từng bước tiếp cận đến với AWS CodeStar.

Bắt đầu với việc khởi tạo Project. Dashboard => Developer Tools => AWS CodeStar

Note: Với lần đầu setup, AWS CodeStar sẽ yêu cầu tạo role “AWSCodeStarServiceRole” với các policy để truy cập tài nguyên của CodeStar => Chọn “Yes, create role”.

Tiếp theo, bạn chọn project template được hỗ trợ sẵn. Các template được lựa chọn gồm ngôn ngữ lập trình (hiện đang hỗ trợ: Ruby, Nodejs, Java, Python, PHP, HTML 5) kết hợp host server AWS EC2, AWS Elastic Beanstalk, AWS Lambda.

AWS CodeStar đem đến cho bạn nhiều lựa chọn host server khác nhau cho web application. Bạn có thể đưa ra lựa chọn phù hợp theo những gợi ý sau:

Ở màn hình tiếp theo, AWS CodeStar sẽ thiết lập tất cả các service cần thiết, tương ứng với 5 step trong quy trình phát triển app của bạn.

Trong project ví dụ này, CodeStar dùng AWS CodeCommit service để quản lý Source Code, quy trình build và test với AWS CodeBuild, Deploy với Elastic Beanstalk và Monitoring bằng CloudWatch.

Note: Bạn có thể chọn “Edit Amazon Ec2 Configuration” để cấu hình tùy ý. CodeStar thiết lập cấu hình mặc định là t2.micro.

Tiếp theo, bạn cần chọn IDE tool và cấu hình AWS Toolkit. Bạn cũng có thể thay đổi IDE bất cứ lúc nào trong khi phát triển project của mình.

Hoán tất và đợi 1 chút để AWS CodeStar thiết lập môi trường cho bạn.

Sau khi Project được khởi tạo thành công, bạn có thể review qua dashboard của Project.

Với các dự án thì Jira là một chương trình quản lý mạnh mẽ không thể thiếu. Bạn có thể dễ dàng tích hợp Jira với AWS CodeStar. Từ Dashboard, chọn “Configure issue tracking” để liên kết với Jira của bạn.

Quay lại dashboard, click vào Application endpoints và trải nghiệm web của bạn. Một điều thú vị CodeStar sẽ điều chỉnh màu của background dựa theo thời gian thực. Hãy thử lại vào buổi sáng và tối để trải nghiệm sự khác biệt.

Sau khi tạo Project, bạn cần thêm member cho project và gán Role (kèm Permission). Chọn Dashboard => Setup your team

Chọn member từ dropdown box “Select user”. Nhập các thông tin:

– Display name (member sau khi được tạo, có thể thay đổi Friendly name)

– Email Address (lưu ý AWS CodeStar có verify domain mail)

– Role, bạn có thể gán 1 trong 3 role: Owner, Contributor hoặc Viewer. Member thuộc nhiều Project khác nhau có thể có nhiều Role khác nhau. Permission từng role được quy định như sau:

Note: Một hạn chế mình thấy rất đáng tiếc là AWS CodeStar đang giới hạn tối đa 100 member cho mỗi project. Thế nên bạn phải tính đến việc quản lý team size và số lượng member active trong project.

Tiếp theo vào mục quản lý Source Code. Chọn Dashboard => Left Toolbar => Code. Trong Dashboard này bạn có thể xem toàn bộ source code, tracking commits, so sánh giữa các lần commit hoặc branches. Ngoài ra bạn có thể cấu hình trigger để gửi email hoặc notification (bằng AWS Simple Notification Service) cho các event (create branch, Delete branch, Push to existing branch…)

Build Project. Chọn Dashboard => Left Toolbar => Build => Start Build

Application Activity Tile (AAT)

Kết luận

Với xu thế DevOps đang phát triển, kèm yêu cầu đổi mới, tiếp cận thị trường nhanh hơn từ các công ty, AWS CodeStar dần trở nên cần thiết để giúp development teams trong việc tạo, xây dựng phần mềm dễ dàng và hiệu quả. Với AWS CodeStar, development teams chủ động hơn trong việc xây dựng một process linh động trong việc quản lý project từ source code cho tới việc quản lý task và các bản build. Đồng thời cho phép tăng tốc độ phát triển phần mềm và sửa lỗi đáp ứng nhu cầu và yêu cầu từ khách hàng.

Nguồn: Potato

Xem video giới thiệu về công cụ này tại đây