SvenKratzEasel / backend-task

Backend Task

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fullstack Engineering Task - iOS CI/CD Pipeline

Welcome to the Easel AI's Fullstack Engineering Task for creating a Continuous Integration and Deployment (CI/CD) pipeline for an iOS development project.

Since we're still a very young company, we would like you to showcase how to bring up some very fundamental services from scratch.

Task Description:

As a backend/fullstack engineer, you are tasked with creating an example iPhone project and implementing tests for the code. You will also create a CI/CD pipeline that supports the following features upon pushing a new commit to the Github repository:

  1. Run a linter on the project code and report any linting errors.
  2. Verify that the project file compiles and report any errors.
  3. Run tests implemented in the project, and report any failed tests.
  • Fork this repository into your own Github account to access the necessary features.
  • Use any tooling that you believe will best accomplish the job.

Bonus features

  • Upload the result of a successful build to Appstore Connect.
  • Set up an automated release process that deploys the build to a staging environment or test users.
  • Implement a hook that posts a Slack message about the successful upload.

Deliverables

  • A Github repository with the example iPhone project, tests, and CI/CD pipeline.
  • A README file with instructions on how to set up and run the pipeline, including any necessary configuration or secrets.
  • A brief explanation of the tools and technologies used, along with any challenges or lessons learned during the development process.

About

Backend Task