Move USE_LDAP to deploy.sh
continuous-integration/drone/push Build is failing Details

This commit is contained in:
Jared He 2021-10-25 20:32:28 -05:00
parent 06cd286956
commit 42f477c6fb
3 changed files with 45 additions and 45 deletions

View File

@ -4,6 +4,8 @@ set -ex
ulimit -u 512
DIR=$(mktemp --directory)
# set USE_LDAP to true to generate member list using LDAP database
export USE_LDAP=true
pushd $DIR

View File

@ -14,50 +14,48 @@ export async function getMembers(
throw new Error(`[getMembers] Not a valid term: "${term}"`);
}
let members: Member[] = [];
if (
process.env.USE_LDAP !== undefined &&
process.env.USE_LDAP.toLowerCase() === "true"
) {
const url = "ldap://ldap1.csclub.uwaterloo.ca";
const searchDN = "ou=People,dc=csclub,dc=uwaterloo,dc=ca";
const client = new Client({
url,
});
try {
await client.bind("", "");
const { searchEntries } = await client.search(searchDN, {
scope: "sub",
filter: `(&(objectClass=member)(term=${term.slice(0, 1)}${year}))`,
});
members = searchEntries
.map((item) => {
return {
name: item.cn as string,
id: item.uid as string,
program: item.program === undefined ? "" : (item.program as string),
};
})
.sort((item1: Member, item2: Member) =>
item1.id.localeCompare(item2.id)
);
} finally {
await client.unbind();
}
} else {
members = [
{
name: "John Smith",
id: "j12smith",
program: "MAT/Mathematics Computer Science",
},
{
name: "Jane Smith",
id: "j34smith",
program: "MAT/Mathematics Computer Science",
},
];
if (process.env.USE_LDAP?.toLowerCase() !== "true") {
return dummyMembers;
}
let members: Member[] = [];
const url = "ldap://ldap1.csclub.uwaterloo.ca";
const searchDN = "ou=People,dc=csclub,dc=uwaterloo,dc=ca";
const client = new Client({ url });
try {
await client.bind("", "");
const { searchEntries } = await client.search(searchDN, {
scope: "sub",
filter: `(&(objectClass=member)(term=${term.slice(0, 1)}${year}))`,
});
members = searchEntries
.map((item) => {
return {
name: item.cn as string,
id: item.uid as string,
program: item.program === undefined ? "" : (item.program as string),
};
})
.sort((item1: Member, item2: Member) => item1.id.localeCompare(item2.id));
} finally {
await client.unbind();
}
return members;
}
const dummyMembers: Member[] = [
{
name: "John Smith",
id: "j12smith",
program: "MAT/Mathematics Computer Science",
},
{
name: "Jane Smith",
id: "j34smith",
program: "MAT/Mathematics Computer Science",
},
];

View File

@ -7,7 +7,7 @@
},
"scripts": {
"dev": "next dev",
"build": "USE_LDAP=true npm run build:web && npm run generate:calendar",
"build": "npm run build:web && npm run generate:calendar",
"build:web": "next build",
"start": "next start",
"export": "next export",