Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: reorganize jira_google_calendar to favor cloud #143

Merged
merged 2 commits into from
Jan 3, 2025
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
83 changes: 14 additions & 69 deletions jira_google_calendar/deadline_to_event/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,86 +9,31 @@ categories: ["DevOps"]

This project automates the process of creating Google Calendar events based on Jira issue creation. When a new Jira issue is created, the workflow automatically generates a Google Calendar event with a deadline to ensure that the required tasks are completed on time.

## Benefits

- **Simplicity**: In a few lines of code, you have a functional workflow that is authenticated and integrated, allowing two applications to communicate with each other.
- **Flexibility**: Use this as a starting point. Add integrations or change the trigger. It's open source and free, so there are no limits to what you can do.

## How It Works

1. **Trigger**: The workflow is triggered by the creation of a new Jira issue.
2. **Create Calendar Event**: The program creates a Google Calendar event based on the Jira issue details, including the due date and description.
3. **Notify**: The event is created in the Google Calendar, and attendees are notified.
1. Receive new Jira issue creation
2. Create Google Calendar event using Jira issue details like due date and description
3. Notify attendees when the event is added to Google Calendar

## Installation and Usage
## Cloud Usage (Recommended)

- [Install AutoKitteh](https://docs.autokitteh.com/get_started/install)

### Configure integrations
1. Initialize your connections through the UI
2. Edit the `jira_issue_created` trigger, in the "TRIGGERS" tab, under the "Actions" column
3. Replace `JIRA_PROJECT_KEY` with your Jira project key
4. Deploy the project

> [!IMPORTANT]
> The `autokitteh.yaml` file includes environment variables for the Jira and Google Calendar connections that need to be configured.

Ensure you have set up the required integrations:

- [Atlassian Jira](https://docs.autokitteh.com/integrations/atlassian)
- [Google Calendar](https://docs.autokitteh.com/integrations/google)

### Clone the Repository

```shell
git clone https://github.com/autokitteh/kittehub.git
cd kittehub/jira_google_calendar/deadline_to_event
```

Alternatively, you can copy the individual files in this directory.

### Run the AutoKitteh Server

Simply run this command:

```shell
ak up --mode dev
```

### Apply Manifest and Deploy Project

1. Navigate to the `deadline_to_event` directory:
> Ensure all connections (Jira, Google Calendar) are properly initialized before the workflow starts running.

```shell
cd deadline_to_event
```

2. Apply manifest and deploy the project by running the following command:

```shell
ak deploy --manifest autokitteh.yaml
```

The output of this command will be important for initializing connections in the following step if you're using the CLI.

For example, for each configured connection, you will see a line that looks similar to the one below:

```shell
[exec] create_connection "deadline_to_event/google_calendar_connection": con_01j36p9gj6e2nt87p9vap6rbmz created
```

`con_01j36p9gj6e2nt87p9vap6rbmz` is the connection ID.

### Initialize Connections

Using the connection IDs from the previous step, run these commands:

```shell
ak connection init my_jira <connection ID>
ak connection init my_google_calendar <connection ID>
```

### Trigger the Workflow
## Trigger Workflow

The workflow is triggered by the creation of a new Jira issue, which prompts the creation of a Google Calendar event according to the issue's details.

## Known Limitations

- Attendees are hard-coded and arbitrary.
- Error handling is not implemented for demo purposes. For example, if the Jira issue is missing any of the required fields (e.g., `description`, `duedate`), the program will not fail gracefully.

## Self-Hosted Deployment

Follow these [detailed instructions](https://docs.autokitteh.com/get_started/deployment) to deploy the project on a self-hosted server.
Loading