Skip to content

Commit e62eabc

Browse files
committed
enable labels and assignees for update and list
1 parent 9bb55c1 commit e62eabc

File tree

2 files changed

+16
-7
lines changed

2 files changed

+16
-7
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
### 1.2.1 (Next)
22
- Enable Github issue state `check` step trigger customization.
3+
- Convert Concourse model struct types to Octocrab models.
4+
- Enable `labels` in issue update and list.
5+
- Enable `assignees` in issue update.
36

47
### 1.2.0
58
- Update issue state inputs to be lowercase for Octocrab consistency.

src/github_issue.rs

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -230,6 +230,9 @@ impl<'issue> Issue<'issue> {
230230
&self,
231231
issues: octocrab::issues::IssueHandler<'octo>,
232232
) -> Result<octocrab::models::issues::Issue, &str> {
233+
// declare labels and assignees at higher scope so values are not dropped before borrow is used later in function
234+
let labels: Vec<String>;
235+
233236
// build the issue pages
234237
let mut issue_page = issues.list();
235238
// ... with optional parameters
@@ -255,10 +258,10 @@ impl<'issue> Issue<'issue> {
255258
let assignee = &self.assignees.as_ref().unwrap()[0][..];
256259
issue_page = issue_page.assignee(assignee);
257260
}
258-
/*if self.labels.is_some() {
259-
let labels = self.labels.clone().unwrap();
261+
if self.labels.is_some() {
262+
labels = self.labels.clone().unwrap();
260263
issue_page = issue_page.labels(&labels[..]);
261-
}*/
264+
}
262265

263266
log::debug!("listing issues");
264267
// send and await the issue page
@@ -297,6 +300,9 @@ impl<'issue> Issue<'issue> {
297300
match self.number {
298301
// issue number specified
299302
Some(number) => {
303+
// declare labels and assignees at higher scope so values are not dropped before borrow is used later in function
304+
let (labels, assignees): (Vec<String>, Vec<String>);
305+
300306
// build the issue
301307
let mut issue = issues.update(number);
302308
// ... with optional parameters
@@ -306,14 +312,14 @@ impl<'issue> Issue<'issue> {
306312
if self.body.is_some() {
307313
issue = issue.body(self.body.as_ref().unwrap());
308314
}
309-
/*if self.labels.is_some() {
310-
let labels = self.labels.clone().unwrap();
315+
if self.labels.is_some() {
316+
labels = self.labels.clone().unwrap();
311317
issue = issue.labels(&labels[..]);
312318
}
313319
if self.assignees.is_some() {
314-
let labels = self.assignees.clone().unwrap();
320+
assignees = self.assignees.clone().unwrap();
315321
issue = issue.assignees(&assignees[..]);
316-
}*/
322+
}
317323
if self.state.is_some() {
318324
// convert str state to issue_state
319325
let issue_state = str_to_issue_state(self.state.unwrap())?;

0 commit comments

Comments
 (0)